Scheduler for medical doctors and clinic administrators

Business goals and needs of the end-users

The customer, the owner of a small medical clinic and doctor service, wanted a solution to the task of scheduling numerous house calls. A group of doctors is regularly visiting patients at their homes, nursing homes, and hospitals. The administrators assign each of the doctors up to 12 patients to visit every day. The goal was to make the planning work easier, save their time, and reduce errors.

The new custom standalone system needed to be synchronized with existing Electronic healthcare records (EHRs). These are real-time records that contain patients’ medical history, diagnoses, medications, treatment plans, immunization dates, allergies, radiology images, and laboratory and test results in a digital format. EHRs allow physicians and other authorized users to access this information instantly and securely. The synchronization of the two systems would allow the customer’s clinic and doctors to use patient information that is constantly updated by other healthcare providers.

The customer also required a handy application to help doctors manage their schedules, optimize their travel to the patients, and provide relevant medical information on each patient when the doctor is on a house call. The application should perform smoothly on a smartphone or tablet regardless of the Operation system.

Based on these requirements, Onix, as a part of the online booking system development services, started developing user flows for two categories of users:


Clinic and other administrators that need to manage doctors, patients, and house calls;


Physicians that need to manage their scheduled house calls, drive to each patient’s facility using the optimal route, and access detailed patient information on a mobile device.

The solution and its killer feature

The resulting application has two interfaces and respective sets of functionalities:

Admin panel for the clinic staff

This web application combines a mini-CRM (Customer Relationship Management) and Protected health information (PHI) functions.
The patient information enters the system in two ways: from EHR, and if a patient is not on EHR, administrators add them manually. All patient data is encrypted on the server.

The administrators manage the patients’ information and create schedules for the doctors.

Admin page view

A progressive web application (PWA) that doctors use on mobile devices

The PWA functions in lieu of a native mobile application. It provides info about scheduled house calls and allows doctors to retrieve each patient’s history and past house calls data. A Scheduler integrated with Google Maps facilitates the doctor’s travel to each patient’s location.

The application’s highlight is the Scheduler. Administrators plan the doctors’ house calls, and the algorithm builds the doctors’ daily routes based on multiple factors:

  • the frequency of prescribed house calls, e.g., biweekly or every Tuesday;
  • the doctor’s working time (no more than 12 patients per day);
  • the location of each patient;
  • the patients’ information;
  • distances between patients.

This scheduling algorithm is integrated with Google Maps to determine the optimal route to each patient’s home. The PWA also can cache information and ensure uninterrupted work even when the network signal is poor.


User flows of the app

All users log in to the system using a username and password.

Using the application, administrators can:

  • add other users (admins and doctors) and edit user profiles;
  • add patients, entering their addresses and additional information, as well as the doctor-patient relations;
  • add information about hospitals and staff;
  • schedule house calls;
  • add the info about doctor and the patients’ info to routes;
  • view reports of 10 types: Missed Patients, Completed Visits, Audio Notes, Provider Visit Summary, Referral Census, Referrals, Routes, New Patients, Documents, and Weekly Route Overview.

A doctor installs the PWA on their smartphone or tablet and uses it to:

  • view their daily route as a list of patients/addresses to visit or as the patients’ locations on the map;
  • change the order of patients in the route;
  • view scheduled patients for weeks and months in advance;
  • confirm/cancel house calls and add patients to the queue;
  • make notes regarding a house call in any of the available five formats, including text, audio, and voice-to-text;
  • view each patient’s medical records and past house calls.

Typically, a doctor logs in, views the route for the day, and contacts the patients to confirm their house calls. Then, the doctor starts the route, drives to each patient, and, once completed, marks the house call in the application. So the doctor visits all patients on their list, using directions from the app, consulting the electronic medical records, making notes, and tracking the number of visited patients. At the end of the route, all the information automatically becomes available for administrators to review.

User images

The project’s technology stack and challenges

The admin side of the application was developed quickly using templates, which also allowed to reduce the initial cost of the demo:

  • User roles and permissions (Super Admin, Admin, Doctor)
  • Admin panel with a simple interface: add users, add patients, and doctor-patient relations
  • PWA: doctor’s login, Google Map integration, daily route page, ‘Start route’

Building the Scheduler that calculates the doctors’ daily routes using various parameters presented the main challenge for the team.

New features were gradually included in several releases of the product so that the end-users could test it in the process.

The technologies stack included Angular and TypeScript on the frontend and PHP and Python for the backend.

UX/UI design

The design was prepared by Onix’s designers who studied similar EHR and CRM systems and navigation/delivery applications as a reference. Sketch was used to make the wireframes, and upon the customer’s approval, high-fidelity interactive prototypes were created in Invision.

The customer’s main requirement was simplicity. This not only saves the budget for the user interface design but provides the basis for excellent user experience. The resulting minimalist interface helps both administrators and doctors to concentrate on their job. Particularly, it helps the doctors access and perceive important medical information and directions faster. There are no showy colors or fancy elements that could divert their attention either.



Icon pack





Open Sans Bold

Open Sans Semibold

Open Sans Regular

Gilroy ExtraBold

messagecalendarlistwheelchairdoctorsecond listpagedownstairsnotebookprofilehospital


The clinic staff liked the intuitive tool for their administrative tasks and the straightforward and fast scheduling system.

The doctors are happy with having the daily plans and routes always at their fingertips. They also appreciated the ability to see the workload for an entire month.

The customer is satisfied with the solution and keeps adding features.


The fast-working system may be useful for any institution that sends physicians to visit patients at home or other facilities.

The Scheduler algorithm has potential for application in logistics, e.g., for route planning by delivery companies. Basically, this solution is ready for use by any delivery company as is, but it can also be used as a framework and be customized for specific delivery needs.

The progressive web application can be replaced with a native application for iOS or Android or written in Flutter or React Native.