Skip to content
Magenta Ong.

Architectured the project, built protected routes and API flows, and wrote most of the Jest, Supertest, and Cypress coverage for the caregiver-support platform. I also grew the most technically here.

May 2025 - Aug 2025

BefriendersCircle platform banner

What happened

BefriendersCircle was our full-stack project for SUTD's 50.003 Elements of Software Construction module. I worked across the frontend and backend, especially the authenticated routes, API integration, and the tests holding those flows together. I also singlehandedly managed to develop the entire backend, including deciding the data tables, APIs, and namings.

The bit between the route and the screen

I worked across protected routes, resource and forum flows, authentication, and the API endpoints behind them. A change rarely stayed on one side of the stack, so I was usually checking the route, endpoint, auth state, and test together.

The original team walkthrough. The opening moves through caregiver resources and community support before the testing section.

A 117-second team pitch showing the platform screens first, followed by the unit, integration, and end-to-end testing plan.

Eleven integration files later

I wrote most, if not all of the unit and integration tests with Jest and Supertest. The eleven files covered auth, comments, boards, resources, external API calls, validation errors, and database cleanup. They were more useful than treating one coverage percentage as the finish line.

A crop from the walkthrough listing the eleven Jest and Supertest integration files.

The Cypress scripts were my monkeys, and I love them.

Six Cypress files ran through login, signup, resources, forum posts, uploads, and cleanup. I called them my monkeys; the name made repeating the same end-to-end flows a little more fun.

While the final product direction could have been stronger, I'm glad that I got to develop monkeys. Cypress tests managed to catch broken flows that manual clicking missed, and that was when backend systems started getting much more interesting to me.

The six Cypress files I kept calling my monkeys.

A cut from the original pitch.

A 72-second walkthrough of the stack, unit and integration testing plan, Jest and Supertest file inventories, and six Cypress end-to-end flows.

Where it got tough

  • Keeping protected routes, API behaviour, and frontend states aligned while the team built in parallel.

  • Writing tests that modelled login, forum, resource, upload, and cleanup flows instead of chasing a number.

  • Cleaning up users, posts, and uploaded files so the end-to-end runs could repeat without inheriting old state.