all projects

NUS Orbital · full-stack · May – Aug 2024

Bundl

Built for NUS Orbital (the university's summer software programme): delivery fees are a fixed cost that nobody coordinates away, so Bundl lets users browse restaurants, see what people nearby are ordering, and bundle orders together, splitting the fee and cutting packaging waste.

real-time
order matching and chat via WebSockets
2
person team, built over one summer
React · Node.js · Express · Socket.IO · MongoDB · Material-UI[ on my teammate's account ]

01How it works

Users add items from multiple restaurants to a cart, see other open orders at their location, and coordinate through built-in chat to bundle. The matching layer groups compatible orders, same area, overlapping restaurant, close in time, and Socket.IO keeps carts, chat and matches live across clients without refresh. MongoDB stores users, restaurants and orders; Express serves the API; Material-UI keeps the interface out of the way.

The interesting part was the real-time state. Keeping several people looking at the same changing order without anyone seeing a stale version is harder than the feature list makes it sound.

next project

Teacher's Pet