← Back
Fixora dashboard preview

ROLE

Full Stack Developer

STATUS

Complete

CATEGORY

Full Stack

Fixora

2026

Home Repair Service Booking Platform

A full-stack Next.js app that connects homeowners with technicians for plumbing, electrical, AC repair, fan repair, painting, and appliance repair. Customers browse services, submit a request through a guided multi-step form, and track its progress live as admins review, schedule, and complete it. Built as a two-sided platform with separate customer and admin dashboards sharing one codebase, one database, and one role-based auth system.

Key Features

  • –Credential-based authentication with NextAuth (JWT sessions) and bcrypt password hashing, with User and Admin roles walled off from each other's routes
  • –Service catalog with categories, pricing, and estimated duration for each service
  • –4-step request wizard: service details → schedule → photo upload → review & submit
  • –Cloudinary photo uploads (up to 5 images per request, JPG/PNG/WEBP under 5MB), validated on both client and server
  • –Live request tracking with Server-Sent Events: status, schedule, price, and admin notes update instantly without refresh or polling
  • –Server-validated status workflow (Pending → Under Review → Approved → Scheduled → In Progress → Completed) that blocks skipped steps and requires a final price before completion
  • –Full status-change audit trail for every request, recording who changed it and when
  • –Query-level caching with unstable_cache for read-heavy data, cutting a cold service-detail load from ~870ms to ~35ms
  • –Custom error, loading, and 404 pages, plus scroll-reveal and micro-interaction animations with Framer Motion

Dashboard

  • –Customer summary cards for Active Requests, Completed, Pending, and Total Spent
  • –Ongoing Requests list with a 'View All' link to the full request history
  • –Request detail page with a live progress timeline and price details
  • –Admin summary cards for Total Requests, Pending, Completed, and Total Revenue
  • –Request Overview chart showing request volume over the last 7 days, built with custom SVG
  • –Request Status donut chart breaking down requests across every status
  • –Admin request management with search, status filtering, and a Recent Requests panel
  • –All stats calculated dynamically from live database data, not hardcoded

Built With

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • DaisyUI
  • Framer Motion
  • React Hook Form
  • PostgreSQL
  • Supabase
  • Prisma
  • NextAuth
  • Cloudinary
  • Server-Sent Events
  • Vercel