Overview
Casita School is a homeschool management platform that helps parents plan lessons, track progress, and coordinate caregivers for multiple students. I designed and built the full stack Vue frontend, Laravel API, PostgreSQL, Docker based deployment, and a touch-first household kiosk for shared devices.
What was included
- Parent authentication and multi-student profiles with role-based caregiver access (guardian/editor)
- Weekly lesson planner, subjects, attendance, grades, writing, certificates, and progress charts
- Manage hub for school profile, billing/plan gates, notifications, and household settings
- Installable PWA for mobile and tablet use
- Household kiosk mode for shared touchscreens: device pairing, student PIN unlock, on-screen keypad, and adjustable UI scale for readability
- Production deployment with Docker Compose, reverse proxy, and a rebuildable static frontend pipeline
- Native Raspberry Pi kiosk shell that opens the hosted kiosk experience fullscreen
Challenge
Homeschool workflows span planning, compliance records, and day to day student access often across parents, caregivers, and shared devices. The hard part was keeping one coherent product that felt calm for parents while remaining secure for students: shared kiosks needed touch-friendly auth without email logins, plan features needed clear gating, and production deploys had to keep API auth, frontend assets, and device sessions isolated so a kiosk session never broke parent accounts or leaked credentials.
Approach
I structured the system as a Laravel Sanctum API plus a Vue 3 SPA, with clear separation between parent sessions and kiosk device/session tokens. Kiosk flows use short-lived pairing codes, hashed PINs, and rate-limited claim endpoints; the UI favors large touch targets and an on screen PIN pad so devices work without a physical keyboard. Deployment is containerized, with the frontend built into static assets served behind a reverse proxy, so production picks up UI changes only after an intentional rebuild keeping local development fast while making production releases deliberate and repeatable.
Next step
Want this level of thinking for your product?
I can help shape the strategy, design the UX, and ship the build.