Tiffinz
Next.jsReact.jsTypeScriptMongoDB AtlasTailwind CSSShadCN UI

Building Tiffinz: A Real-World Full-Stack System for Managing a Scalable Tiffin Service

Role: Full-Stack Developer | Timeline: 2025 – Present


Why I Built Tiffinz

Tiffinz started with a real operational problem.

My mother runs a local tiffin service and managed customer balances using handwritten cards. Each card tracked meals taken and remaining balance, calculated manually.

As the customer base grew, this approach became increasingly fragile:

  • Manual calculations led to frequent errors
  • Customers had no visibility into their balance or meal history
  • Cancellations were hard to adjust accurately
  • The system did not scale beyond a small customer set

I saw this as an opportunity to solve a real business problem using production-grade engineering, not just build a demo app.


Defining the Problem Like an Engineer

Instead of immediately jumping into code, I broke the problem down into system requirements:

  • A transparent wallet system with transaction history
  • Daily meal tracking with support for cancellations
  • Clear separation of user and admin responsibilities
  • A backend flexible enough to evolve without breaking data consistency
  • Cost-effective infrastructure suitable for small businesses

These constraints guided every technical decision that followed.


Designing the System

I designed Tiffinz as a role-based full-stack platform with clearly defined workflows.

Key Design Decisions

  • Wallet-first architecture: Every meal, cancellation, or payment is reflected as a transaction
  • Admin-controlled verification: Prevents incorrect wallet credits
  • Schema designed for analytics: Enables future reporting without migrations
  • Free-tier friendly: Optimized for MongoDB Atlas and serverless deployments

This ensured correctness first, while leaving room for scale.


What I Built

User Experience

Users can:

  • View daily tiffin status and upcoming meals
  • Track wallet balance with complete transaction history
  • Request wallet top-ups
  • Cancel meals with predefined charges applied automatically

This shifted trust from verbal confirmations to data-backed transparency.


Admin Experience

Admins can:

  • Verify payments manually before wallet credit
  • Manage users and wallet balances
  • Schedule meals and track delivery status
  • Monitor all financial transactions from a single dashboard

Admin actions are protected both at the UI and API level.


Technical Implementation

Frontend

  • Next.js App Router with server-side rendering
  • TypeScript for safer data handling
  • Tailwind CSS + ShadCN UI for consistent, reusable UI components
  • Optimized layouts for admin dashboards and data-heavy views

Backend

  • API routes implemented within Next.js
  • Role-based access control enforced server-side
  • Environment-based configuration for secure secrets handling

Database Design


Challenges & Engineering Trade-offs

1. Wallet Consistency

Designing a system where cancellations, refunds, and daily deductions never desync the balance required careful transaction modeling.

Solution: A transaction-driven wallet system where balance is derived from controlled updates.


2. Authorization Safety

Admin routes expose sensitive financial data.

Solution: Dual-layer protection:

  • Frontend route guards
  • Backend role validation in every admin API

3. Scaling on Free Infrastructure

The system needed to stay usable without paid services.

Solution: Efficient schema design, serverless APIs, and minimal write operations.


Impact

  • Eliminated manual balance calculations
  • Improved customer trust through transparency
  • Reduced admin effort in daily operations
  • Created a foundation that can scale beyond a single service provider

This is not a toy project—it’s a production-ready system solving a real business need.


What’s Next

  • Mobile application support
  • Notification system for meal updates
  • Online payment gateway integration
  • Monthly revenue and usage analytics

Closing Thoughts

Tiffinz represents how I approach engineering problems: start with reality, design for correctness, and build for growth.

This project continues to evolve as I refine both the product and my skills as a full-stack developer.


TL;DR:

Built a real-world, production-ready full-stack platform to manage a local tiffin service, focusing on wallet transparency, meal tracking, and secure admin workflows. Designed with scalability in mind using Next.js, TypeScript, and MongoDB, and is actively maintained with ongoing feature additions and bug fixes.