A full-stack SaaS platform for managing pet daycare operations — records, bookings, authentication, and payments in one dashboard.
September 2025 · Solo Project · 4 weeks
PetSoft is a modern full-stack pet management platform built with Next.js 15 (App Router). It enables users to track pets, manage their details, perform searches, and securely handle payments for premium access. The app leverages Server Actions for all CRUD operations, integrates NextAuth.js v5 (Credentials Provider) for authentication, and uses Stripe for secure payment processing — all wrapped in a clean, responsive, and optimized UI built with shadcn/ui and Tailwind CSS.
Pet owners managing multiple animals had no lightweight way to track details, search records, and gate premium features behind real payments — most hobby projects fake the payment flow. The goal was to build something that felt production-real: authenticated, paid, and fast.
Frontend
Backend
Services
Solution
Verified Stripe webhook signatures server-side and updated subscription status only from trusted webhook events, never from client-reported state.
Result
Premium access reflects real payment state with no client-side trust gap.






Next.js Server Actions POST to their own route (not just /api), so a middleware redirect for an unrelated auth check can silently break the RSC action-response contract — had to rewrite the edge authorization callback to only ever redirect on GET, never on POST
Splitting NextAuth config into an edge-safe version (no bcrypt/Prisma) and a full Node version keeps the middleware bundle under Vercel's edge size limit, but doubles the surface area that has to be kept in sync
Server Actions remove the API-route boilerplate, but every one still needs its own Zod validation and ownership check — nothing enforces that a pet being edited actually belongs to the requesting user except code you write yourself