Case study
Production Systems
Bonavista Maintenance Suite
A field-operations platform spanning web, iOS, and browser automation, built from an original 14,000-line PHP application and scaled with contract developers.
Outcome
10,334 work orders and 30,201 geofenced check-ins across 95 field staff.
My role
I built the original application alone as 14,000 lines of PHP over nine months, then founded the web and mobile successor repositories and worked solo on each before contractors joined.
I architected the rewrite, defined milestones and acceptance criteria, reviewed the work, and continued to own the integrations and production result. The later React codebase includes substantial contractor implementation.
The Problem
The portfolio needed one system to coordinate maintenance work, field execution, resident communication, and write-back into a legacy property-management platform. Commercial tools imposed portfolio-wide pricing and still left integration gaps.
The supervisor's command center for work orders, scheduling, reports, and field activity.
Next.js 15 · TypeScript · Microsoft Graph API · MySQL · FullCalendar · Resend + Mailgun · AWS S3 · Puppeteer · APNs
- Supervisors authenticate via Microsoft 365 OAuth (Azure AD / MSAL) with delegated calendar access
- Work orders, unit turns, move-out inspections, and grounds submissions managed from a single dashboard
- Auto-generates Outlook calendar events for assigned technicians via Microsoft Graph API
- FullCalendar-based drag-and-drop rescheduling with resource views
- PDF report generation via Puppeteer headless rendering with direct upload to Yardi
- 15+ automated email notification templates via Resend + Mailgun
- Equipment checkout system with NFC tag tracking, cost calculation, and overdue reminders
- Weekly performance review system with questionnaires, scoring, and bonus calculations
- GPS radius tracking and location discrepancy detection during work hours
- Analytics dashboard with performance metrics and real-time activity feed
- 5 Vercel cron jobs running automated notifications and summaries

Maintenance Panel homepage

Work order view

Work order PDF export

Schedule view with Graph API
10,334
Work Orders
2,601
Unit Turns
3,669
Grounds Jobs
30,201
Geofenced Check-Ins
95
Field Staff
Built With