Relish
My first production project — a React application built end to end and running live at relish.ma. From the first component to deployment.
The problem
Build a complete, production-ready web application from scratch — not a prototype, not a demo, but a real product that people would actually use. This was about proving I could take an idea from a blank editor all the way to a live URL.
What I built
Relish is a React application built end to end. Every component, every state decision, every deployment step — from the first line of code to production. The gap between "it works locally" and "it works in production" is where most projects die; this one made it through.
Feature walk-through
Component-based architecture
Clean, reusable React components organized by feature rather than by type. Each component owns its logic, making the codebase easy to navigate and extend.
Responsive on every screen
Mobile-first layout that scales from small phones to desktop — no separate mobile site, no broken breakpoints.
Production deployment
Live at relish.ma with optimized builds, lazy loading and code splitting — performance was a requirement, not an afterthought.
Under the hood
Built with a clean separation of concerns — components handle their own logic, state flows predictably, and the UI stays in sync without unnecessary re-renders. The project taught me how to think about scale even in a small application.
- Feature-based folder structure
- Predictable, unidirectional state flow
- Lazy-loaded routes and optimized assets
- Deployment pipeline from build to live URL
What I learned
- How to structure a React app for maintainability
- Production deployment workflows
- Performance optimization techniques
- The real gap between local dev and production