Skip to content

Latest commit

Β 

History

History
136 lines (95 loc) Β· 3.53 KB

File metadata and controls

136 lines (95 loc) Β· 3.53 KB

PatchFest Backend Starter πŸš€

This project is a simple backend API starter created for IEEE PatchFest.
It provides a clean and minimal foundation that contributors can build on during the event.

Instead of creating a full application beforehand, this repository gives participants:

  • a working backend,
  • a clear folder structure,
  • and a list of issues that describe exactly what needs to be built next.

This helps contributors practice real-world backend development in a structured way.


πŸ“Œ What This Project Is

This project is a Node.js + Express backend with only the essential setup included.

Right now, it contains:

  • A minimal Express server
  • A /health API route that returns { ok: true }
  • A clean folder structure (src/server.js)
  • Multiple issues describing the next steps

It is NOT a finished project.
It is only the foundation that participants will extend during PatchFest.


🎯 Purpose of the Project

The goal of this backend starter is to help PatchFest participants:

  • Learn how backend APIs work
  • Understand GitHub workflows (issues, branches, PRs)
  • Build real features step-by-step
  • Collaborate in an open-source environment

This project gives everyone β€” beginners and advanced β€” meaningful tasks to work on.


πŸš€ What This Backend Will Become

By the end of PatchFest, contributors will turn this starter into a functional backend API system with:

  • βœ” CRUD routes (create, read, update, delete data)
  • βœ” A storage layer (JSON or database)
  • βœ” Input validation
  • βœ” Error handling
  • βœ” Logging system
  • βœ” Rate limiting
  • βœ” A /metrics endpoint
  • βœ” API documentation (Swagger/OpenAPI)
  • βœ” Automated tests and CI workflows

Each of these features will be added through the issues already listed in this repository.


🧱 How the Project Works

The backend runs on Express.js and is structured like this: patchfest/ β”‚ β”œβ”€β”€ src/ β”‚ └── server.js # Main backend server file β”‚ β”œβ”€β”€ package.json # Dependencies and scripts └── README.md # Documentation

Key Components:

  • src/server.js β†’ The main server file where API routes will be added
  • /health β†’ A simple route to verify the server is running
  • Issues β†’ The list of tasks contributors can complete
  • README β†’ The guide for running and understanding the project

πŸš€ How to Run the Project

  1. Install dependencies: npm install

  2. Start the server: npm start

  3. Open the health check endpoint: http://localhost:3000/health

If you see: { "ok": true } the backend is running successfully.


🀝 How to Contribute

  1. Go to the Issues tab
  2. Choose an issue you want to work on
  3. Comment: β€œI want to work on this”
  4. Create a new branch
  5. Write the code for the issue
  6. Open a Pull Request
  7. After review, your changes will be merged

This workflow teaches open-source collaboration.


πŸ—‚οΈ Roadmap

  • Add CRUD API routes
  • Add JSON/database storage layer
  • Add input validation
  • Add proper error handling
  • Add logging
  • Add rate limiting
  • Add metrics endpoint
  • Add API documentation
  • Add automated tests
  • Improve developer documentation

πŸŽ‰ Why This Project Is Perfect for PatchFest

  • Easy to understand
  • Beginner-friendly
  • Designed specifically for contributions
  • Minimal setup so everyone can build
  • Clear issues guide all development steps

This project will grow through teamwork, learning, and collaboration during PatchFest.