Engineering

From Idea to Deployment: Shipping 8 Apps on Vercel

Lessons learned from building and deploying 8 production web applications — architecture decisions, CI/CD workflows, and performance optimization.

June 10, 202610 min read
Suyash Vakhariya
Suyash VakhariyaAI Engineer & Technical Product Manager

The Challenge

Over the past year, I've shipped 8 production web applications to Vercel — from a full-stack enterprise workflow system to security dashboards and e-commerce analytics tools. Here's what I learned about building and deploying real products.

The Apps

AppStackWhat It Does
**WorkSphere OS**Node.js, Express, MongoDBEnterprise workflow & team management
**CloudSecure**JavaScript, ReactCloud security monitoring platform
**Price Pulse**HTML, CSS, JSE-commerce price tracking & analytics
**Smart Study Planner**React, Firebase AuthStudy scheduling with Google SSO
**Edunet**HTML, CSS, JSEducation analytics dashboard
**Portfolio**Next.js, Three.js, FramerThis website you're reading

Architecture Decisions That Mattered

1. Start with the Data Model

Every successful app started by defining the data model first. For WorkSphere OS, I mapped out 10 Mongoose models before writing a single route:

User → Task → Message → Timetable → KnowledgeDoc
ActivityLog → Announcement → Download → LeaveRequest → Notification

This upfront investment saved weeks of refactoring later.

2. API-First Design

For apps with backends, I designed the REST API before building the frontend:

POST /api/auth/register     → Create account
POST /api/auth/login         → Get JWT token
GET  /api/tasks              → List user's tasks
POST /api/tasks              → Create task
PUT  /api/tasks/:id/status   → Update task status

This made frontend development parallel and predictable.

3. Vercel-Optimized Architecture

Vercel's serverless model has constraints. I learned to design around them:

  • Edge functions for auth middleware (faster cold starts)
  • ISR (Incremental Static Regeneration) for pages that change occasionally
  • API routes with connection pooling for database calls
  • Static assets in public/ for zero-latency serving

Deployment Workflow

Local Dev → Git Push → Vercel Auto-Deploy → Preview URL → Production

Every push to main triggers a production deployment. Every PR gets a preview URL. This CI/CD pipeline is free and takes zero configuration.

Performance Wins

  • 1.Code splitting — Next.js automatically splits bundles per page
  • 2.Image optimization — Using next/image for automatic WebP conversion and lazy loading
  • 3.Font optimization — Google Fonts loaded via next/font to eliminate layout shift
  • 4.Bundle analysis — Running @next/bundle-analyzer to find and eliminate large dependencies

What I'd Do Differently

  • Start with TypeScript — I migrated two apps mid-project. It's always easier to start with it
  • Add monitoring from day one — Error tracking (Sentry) and analytics (Vercel Analytics) should be there from the first deploy
  • Write tests early — Not comprehensive unit tests, but at least API endpoint tests

Key Takeaway

Shipping is a skill. The gap between "it works locally" and "it's live and reliable" is where real engineering happens. Every one of these 8 apps taught me something different about building products that actually work in the real world.


Check out all my deployed apps at suyashvakhariya.in.

VercelNext.jsReactDevOps
Suyash

Suyash Vakhariya

AI Engineer & Technical Product Manager. Building production AI systems.

© 2026 Suyash Vakhariya