MPPT Care: Staff App for Field Technicians
An internal Flutter app for MPPT Care's field service team: technicians receive assigned jobs, see customer and site details, and update progress in real time.
The problem
Technicians in the field needed their assigned jobs, the customer's details and the exact site location in one place, instead of relying on calls and messages.
Every status update from the field had to reach the office and the customer straight away.
What I built
- Assigned job list for each technician
- Customer and site details for every job
- Real time job progress updates through to completion
- Secure connection to the Laravel backend through RESTful APIs
Technical challenges
Keeping the office, the field and the customer in sync
- Problem
- A job's status changes in the field, but the admin team and the customer each look at it in a different app.
- Solution
- All three apps read and write through the same Laravel API, so a status change from the staff app is instantly what the admin panel and the customer app show.
Architecture overview
Clients
Customer app
Flutter · iOS + Android
Staff app
Flutter · field technicians
Filament admin
RBAC, staff roles
Company website
Public site
Backend
Laravel REST API
Auth/OTP · bookings · complaints · warranty · lab
Data & services
MySQL
Core data
SMS gateway
OTP delivery
Google Maps
Location picking
A single API serves the customer app, staff app, admin panel and website, so business rules live in one place.
Filament runs inside the same Laravel app, sharing models and policies with the API.
Screenshots
Results
Technicians manage their jobs from the app, and every update reaches the admin panel and the customer instantly, creating one connected after sales workflow.