00 / Overview
The project at a glance.
Pets brings pet profiles, medical records, photos, medication plans, and everyday observations into one workspace. A separate administrator interface supports member management and care analytics.
Implementation
Built pet-care and administrator workflows with a relational data model, validated server actions, and account-scoped file routes.
Project scope
A runnable local workspace for managing pet-care records, with a typed database layer, validated mutations, and separate owner and administrator views.
Care records organized around each pet
Owners can create and edit pet profiles, search their pets, and filter categorized medical history. Medication plans, weight measurements, and observations sit alongside care essentials such as allergies and emergency contacts. Selected records can be printed as a care summary.
Typed boundaries from UI to database
Next.js Server Components load data, Server Actions handle mutations, and Route Handlers serve files and sessions. Prisma models the PostgreSQL relationships among accounts, pets, medical records, files, medication plans, and care logs. Zod validates input, while Sharp normalizes uploaded profile photos.
Administration and a reproducible local setup
The administrator workspace includes account and care-record management plus analytics derived from stored records. Docker Compose runs the app and PostgreSQL with persistent database storage. The repository includes unit and database integration checks and fictional seed data.
Local demo tradeoffs
Storing images in PostgreSQL keeps files and care records in the same local database. Email-only account selection does not verify ownership, so the demo is intended for trusted local use and needs verified authentication before deployment.