← Back to Portfolio

Noodle Maps

Web app and custom CI framework for Larger-Scale Software Development

Noodle Maps logo

Overview

In my junior year, I took Larger-Scale Software Development, a course focused on professional coding practices such as documentation, testing, and continuous integration (CI). For the final project, our team built Noodle Maps: a simple route-planning web app we made as a testbed for our custom CI framework.

The app used the Google Maps API on the backend with a minimal HTML frontend. Our real emphasis was on designing a workflow that enforced rigorous quality checks before code could reach the main branch.

Our CI Framework

We implemented a structured GitHub-based workflow to ensure correctness and collaboration:

  1. Each new feature started on its own branch.
  2. Unit and integration tests were written before implementation, focusing on inputs/outputs instead of brittle internal logic.
  3. Commits triggered hooks to run unit tests.
  4. Pull requests merged into true-head only if integration tests passed (via a custom GitHub Action).
  5. If reviewers approved and all tests passed, true-head was merged into green-head - but only after a full end-to-end test suite succeeded.

This structure prevented direct merges to protected branches and blocked bugs at multiple checkpoints.

Our CI framework enforced multi-layered testing and review, ensuring that the main branch was always stable and deployable.

My Contributions

Outcome

Our CI framework ensured a high-quality codebase by enforcing multiple layers of automated and human review. The structured process gave us confidence that green-head was always stable and deployable. Noodle Maps demonstrated how disciplined CI/CD practices can minimize bugs even in a student project.