FarmFresh
Farm to table marketplace with a split client and API
A marketplace connecting local farmers listing produce with customers who browse, order and pay, built as a Next.js 15 client against a separate Express API.

What is FarmFresh?
FarmFresh is a farm to table marketplace connecting local producers with customers. The Next.js 15 client and Express API are deployed separately, which keeps the storefront fast and statically served while order, listing and payment logic lives behind a typed API that can scale on its own terms.
The interesting part
What Was Actually Hard
Every project looks straightforward in a case study. These are the problems that decided how it was built.
Two deployables instead of one
Splitting the Next.js client from the Express API means each scales and deploys independently. The cost is a contract that has to be kept honest, which is what typed responses and validation at the boundary are for.
Two sided marketplace state
Producers list and manage stock while customers browse and order against it. Both sides read and write the same inventory, so the interesting work is in keeping those views consistent without locking the whole catalogue.
Payment and order flow
Checkout has to survive partial failure. An order that takes payment must never lose its record, which shapes where the write boundaries sit rather than being bolted on at the end.
What it does
Shipped Feature Set
- Producer listings with stock management
- Customer browsing, ordering and payment
- Separate Next.js client and Express API
- Typed request and response validation

Built by
Ashraful Islam Hridoy, Lead Engineer
Ashraful builds the systems behind The Cubas engineering work, from typed REST APIs and data models to the React interfaces on top of them. His focus is the part most builds skip: secure access, reliable background jobs, and what happens to a system after launch.
Read the backgroundServices this demonstrates


