Self-directed project: Built while working through the ByteGrad curriculum, to practice production-grade patterns end to end.
PetSoft
All-in-one pet daycare management system with scheduling and a client portal

What I Set Out To Build
I built PetSoft as a self-directed portfolio project (developed while working through the ByteGrad curriculum) modeled on a real problem small pet-care businesses face: managing bookings, records, and client communication across paper, spreadsheets, and text messages, which leads to double-bookings and lost information. The goal was to build a professional, affordable alternative to that chaos from the ground up.
What it demonstrates: A production-style approach to scheduling logic, role-based access, and file handling — the core systems a real booking/records platform depends on.
How I Built It
I built PetSoft as a comprehensive, all-in-one management platform for pet care businesses. The core is a scheduling engine powered by Prisma and PostgreSQL that checks real-time availability to prevent double-bookings. Better Auth provides secure, role-based access for staff and a separate client portal. Uploadthing handles pet photos, medical records, and vaccination certificates. The frontend, built with Next.js, gives an app-like experience with server-side pagination for managing pet and client records. Zustand and React Hook Form manage complex state and forms across daily check-ins and client communication.
Result: Full-stack management platform built to remove manual, paper-based admin work
Real-Time Scheduling
Server-side pagination and instant availability checks are designed to handle many pets and bookings without performance lag, preventing double-bookings.
Client & Pet Portal
Better Auth enables a secure client portal where pet owners can view bookings and update information.
Centralized Records
Uploadthing and Prisma manage pet data — medical records, photos, vaccination proof, and feeding instructions — in one place.
Efficient Daily Management
Zustand and React Hook Form streamline daily check-ins, staff assignments, and client communication.