Two Apps, One Visit
The product sends a doctor to the patient's home. The patient app requests the visit and follows it; the doctor app receives it, runs it and closes it. Both talk to one Laravel API, and both run in Spanish and English.
The Patient App
The patient chooses a service: a doctor visit, an ambulance, medical history, appointments or prescriptions. For a visit they point at the affected area on a body map, choose symptoms, and confirm the address. Once a doctor accepts, the app shows who is coming, their rating and experience, and where they are on the map.
The Doctor App
The doctor sees each incoming visit with the symptoms, the reason for the consultation and the patient's medical coverage, then goes to the patient's location. At the end they add a prescription, and the app totals the consultation and the travel fee and takes the payment.
The Laravel API
Laravel with Passport bearer tokens, separate registration for patients and doctors, and endpoints for finding doctors, updating location, creating and assigning appointments, adding medication and rating the visit. Payments ran through Stripe and a local gateway for the client's market. Live updates went over Socket.io, and push over FCM.
Three Contracts
The first contract built the API. The second added payments. The third redesigned both apps on top of the same API without breaking anything patients were already using. Extending a live system three times is a better test of a backend than building it once.
A Note on the Images
The screens were redrawn from the project source code. Layouts, colours, icons and labels come from the code; names, addresses and amounts are sample data.
Building a healthcare or on-demand service app?
Patient and provider apps, scheduling, location and payments on one backend. Baydot has shipped that shape and kept it running through redesigns.
Book a Free Call