Open source · 8 min read · 2026-09-13
Is there an open source medical scheduling software?
Yes, though probably not for the problem you are trying to solve. Three different things go by the name medical scheduling, and open source covers two of them very well: patient appointment booking, and the mathematical engine that computes an assignment. The one in the middle, the application that decides who works Tuesday morning and in which office, no longer has a maintained project. The three a roundup will still recommend to you this year have all been abandoned, and each one's date can be named.
Co-founder · development
In short
- The term covers three distinct pieces of software: patient appointment booking, the care team's own schedule, and the engine that computes the assignment. A good share of the disappointment comes from installing the first to solve the second.
- On booking, the offering is mature. OpenEMR is under the GPL-3.0 licence, and GNU Health, an official GNU package since 2011, is under GPLv3 and runs in the public health systems of several countries.
- On the engine, open source is the best there is. OR-Tools and Timefold Solver, which came out of the OptaPlanner team, are both under the Apache 2.0 licence. They are libraries: they compute, they have no interface.
- Team scheduling is the hole. Staffjoy has been deprecated since September 2019, TimeTrex Community Edition was discontinued on 2024-10-01 with no further security patches, and OptaWeb Employee Rostering states itself that it is no longer maintained.
- The reason is scope. A team rotation is written once and serves everywhere; an FMG's service offer, the AMP list and the transmission of blocks to the orchestrator through a certified EMR change with each edition of the MSSS program.
- Free describes the licence, not the running of it. The server, version upgrades, security patches and the second person able to open the code in November all stay on your side.
Three different pieces of software share one name
The question almost always comes up in the same terms, and the search almost always returns the wrong family of tools. An FMG manager looking for open source medical scheduling software wants to know who works Tuesday, in which office, and who takes the Friday on-call shift. What comes back is medical record systems with an appointment module.
Separating the three objects solves half the problem before anything is downloaded. The first books patients into a physician's already-known blocks. The second decides those blocks, accounting for vacations, hospital days, available offices and on-call fairness. The third is the calculation itself, the machinery that places thirty people into two hundred cells without breaking a rule. Free projects are spread very unevenly across the three.
What exists and works
Patient appointment booking
This is by far the best-served category. OpenEMR, under the GPL-3.0 licence, describes itself as a full electronic health record with practice management, scheduling and billing. GNU Health goes further still. Adopted as an official GNU package in 2011, distributed under GPLv3 by GNU Solidario and built in Python on the Tryton framework, it runs in the public health systems of Argentina, India and Jamaica among others, and it has been designated a digital public good. Lighter projects such as Easy!Appointments or Cal.com cover booking alone.
These tools are alive, translated, documented and deployed at scale. They answer the question of what time a patient sees Dr. Tremblay. They do not answer why Dr. Tremblay works Tuesday rather than Thursday, or who picks up her walk-in block when she withdraws.
The engine that computes the assignment
Here open source wins outright. OR-Tools, Google's optimization toolkit distributed under Apache 2.0, contains the CP-SAT constraint solver, which settles a month of on-call rotation for a dozen physicians in a fraction of a second. Timefold Solver plays in the same league. The team behind OptaPlanner picked up the code in April 2023 to continue it under that name, and its Community Edition remains under Apache 2.0. Our article on medical scheduling as an operations research problem prints a complete, runnable CP-SAT model that does exactly this.
The misunderstanding starts when these libraries are mistaken for software. A solver takes a model you wrote and returns a valid assignment. It has no screen, no user accounts, no notification when the schedule changes, no mobile view for the physician who wants to know where he is on Tuesday, no history of who accepted which transfer. Those pieces are the bulk of the work, and they bear on the life of the schedule after publication, which is where the management hours are actually spent.
The examples shipped with Timefold show the remaining distance well. The closest one is called Employee Scheduling and assigns shifts to employees based on their availability and skills. The only properly medical example in the set assigns beds to patient stays. Nobody will find a walk-in block, a weighted on-call shift or a shared office in there.
What no longer exists: the team scheduling application
Between the medical record and the solver, the middle piece is missing, the one a manager would open on Monday morning. Three projects have occupied that spot and open source roundups keep recommending them. Checking each one's last sign of life takes five minutes and saves several months of work.
Staffjoy, deprecated since 2019
Staffjoy handled employee scheduling for small businesses and its code was published under the MIT licence as the company was shutting down. The repository has carried a notice since September 2019 stating that the code is deprecated. A fork exists, maintained by an individual contributor. Building a clinic's schedule on that base means single-handedly picking up a shift management tool designed for retail, seven years after it was abandoned.
TimeTrex Community Edition, discontinued in 2024
This is the project most comparisons still present as the best free option for employee scheduling. The Community Edition, under the AGPL-3.0 licence, offered attendance tracking, scheduling and payroll compatible with Canadian tax rules, with no user limit. Its publisher announced the edition's discontinuation as of 2024-10-01, noting that the existing version would keep working but would receive no further updates or security patches.
That distinction carries weight for a clinic. A web application exposed on the internet, holding the contact details, absences and withdrawal reasons of thirty professionals, whose publisher has publicly stated there will be no further patches, becomes a decision to document rather than a default solution.
OptaWeb Employee Rostering, no longer maintained
This was the most accomplished demonstration of the genre, a complete team rotation web application, under Apache 2.0, built on OptaPlanner by the people writing the solver. Its repository now announces that it is no longer maintained and points to examples of integrating the solver into your own application. The engine stays available, the application around it is yours to write.
Why nobody maintains that piece
Free software survives when enough people share the same need to share the upkeep. Team rotation meets that condition, which is why the solvers are in good health. A Quebec FMG schedule does not meet it.
We counted twenty-seven real constraints in an FMG schedule, and twenty-two of them are written outside the group. The minimum service offer and its spread across seven days, accès-réseau hours that vary by FMG level, the twelve weekly AMP hours for physicians under fifteen years of practice, hospital call published after the clinic's own schedule, the transmission of every availability block to the orchestrator through an MSSS-certified EMR: these are Quebec rules, set out in a funding program that appears in a new edition every year.
A volunteer contributor in Belgium or India has no reason to encode that, and even less to follow the annual changes. The gap between a generic rotation engine and a schedule publishable in an FMG is made almost entirely of those local rules, and it is permanent upkeep rather than a one-time contribution.
What free means here
The licence costs nothing, which settles one budget line and opens several others. You need a server that stays up, backups someone has already test-restored, a certificate that renews, version upgrades that do not wipe your customizations, and security patches applied as they are published.
The most expensive item stays human. A no-code base already suffers from the single-person problem, where one person built everything and only that person can find their way around it; a self-hosted application amplifies it, because it adds the operating system, the database and the code itself. When the rules change in November, somebody has to reopen all of that without breaking anything.
Self-hosting also moves responsibility under Law 25. A physician's availability, absences and withdrawal reasons are personal information, and the obligation to protect them follows whoever holds them. Hosting it yourself means choosing where the data sits, which is a genuine advantage, and answering alone for the incident, which is less of one. Our security and compliance page describes Synchro's position on that ground.
When open source is the right choice
There are real situations where it is the right answer, and a vendor who claims otherwise is lying to you. An organization already hosting other systems with an in-house IT team has already paid the larger share of the bill. One that must be able to name the server its data sits on, audit the code that processes it, or that refuses per-user billing on principle, will find guarantees in free software that no subscription offers. Nobody can shut the product down or double its price.
In that case, the shortest path runs through the solver rather than through reviving an abandoned application. Model one real month with OR-Tools or Timefold, on your actual constraints, and look at what comes out. Our comparison of Synchro and a tool built in-house covers what follows, which is the long part: the interface, the accounts, the notifications, the transfers and the changes after publication.
Where to start if you want a serious evaluation
- Name which of the three things you are looking for. Patient booking, team scheduling, or the calculation engine. Confusing the first two explains most installations abandoned after three months.
- Check the date of the last commit before anything else. Not the star count, not the project's home page. A repository with no activity for eighteen months is a debt you are taking on.
- Test the refusal, not the display. Deliberately place two physicians in the same office at the same hour, then book someone into a walk-in block right after putting them on vacation. A tool that records both without a word leaves you the entire job of proofreading.
- Look for the three objects of the trade. The walk-in block, the weighted on-call shift and the shared office. A generic shift with a required skill does not replace them, and their absence usually surfaces after the migration.
- Cost out the running, not the licence. Server, backups, version upgrades, and the monthly hours of whoever looks after it. Compare that total against a subscription, not zero against a subscription.
- Name the second person right away. Somebody else has to be able to open the server and the code next September. If nobody volunteers, the question is settled.
Where Synchro fits
Synchro is not free software, and an article on the subject may as well say so plainly. It is a subscription service at $10 CAD per user per month whose code is not published. What it brings to this ground is the work the abandoned projects never finished: the objects of the trade rather than generic shifts, with walk-in blocks, weighted on-call shifts, shared offices and transfers between colleagues carrying the record of who accepted and when. Office and activity assignment runs on CP-SAT, the same free solver we would recommend to anyone wanting to write their own. In our pilot FMG in Saint-Hyacinthe, about thirty people managed in a spreadsheet took roughly 30 management hours a month including post-publication corrections, and about one hour with the tool. Those are our own measurements, not a network average.
What Synchro does not do: no patient data flows through it, the tool does not replace your EMR, whether Ofys, Omnimed, Medesync or Kinlogix, and it therefore transmits nothing to the orchestrator on your behalf. It does not produce your AMP list and does not compute your attendance rate. A clinic with the technical capacity to host its own systems and a real attachment to controlling the code has legitimate reasons to take the other path.
Going further
Frequently asked questions
Is there an open source medical scheduling software?
Yes for two of the three things that carry the name, no for the third. Patient appointment booking is well served by live projects such as OpenEMR, under the GPL-3.0 licence, and GNU Health, under GPLv3. The engine that assigns people to blocks is excellent in open source, with OR-Tools and Timefold Solver, both under Apache 2.0. The application in between, the one that builds a medical team's schedule and publishes it, no longer has a maintained project.
Which open source team scheduling projects have been abandoned?
The three that roundups still recommend. Staffjoy, under the MIT licence, has carried a deprecation notice in its repository since September 2019, the company having shut down. TimeTrex Community Edition, under AGPL-3.0, was discontinued by its publisher on 2024-10-01, who announced it would receive no further updates or security patches. OptaWeb Employee Rostering, under Apache 2.0, states in its repository that it is no longer maintained and points to examples showing how to integrate the solver into your own application.
Is an open source solver enough to build an FMG schedule?
It settles the calculation, which is the shortest part of the work. OR-Tools and Timefold Solver take a model you wrote and return a valid assignment, often in a fraction of a second. They have no interface, no user accounts, no notifications, no mobile view and no history of transfers between colleagues. Those pieces are what take a year to build, and they are the ones that keep a schedule alive after it is published.
Why is there no open source scheduling software for Quebec FMGs?
Because the generic part is easy to share and the local part is not. A team rotation engine is written once and serves everywhere. The minimum service offer, accès-réseau hours, the AMP list, weighted on-call fairness and the transmission of availability blocks to the provincial orchestrator through an MSSS-certified EMR are Quebec rules that change with each edition of the funding program. A volunteer contributor abroad has no reason to encode them, and even less to track them every year.
Does open source software really cost less than a subscription?
The licence is free, running it is not. You need a server, backups someone has actually test-restored, a certificate, version upgrades and somebody applying security patches as they are published. Above all you need a second person able to open the code in November when the rules change. For a clinic with no in-house IT, those line items pass a subscription quickly; for an organization already hosting other systems, the maths can land the other way.
When is open source the right choice for clinic scheduling?
When you already have the technical capacity and a specific reason to want control. An in-house IT team already hosting other systems, a requirement to choose the server your data sits on, a wish to audit the code, or a refusal of per-user billing are all sound reasons. In that case, start from a maintained solver such as OR-Tools or Timefold rather than trying to revive an abandoned application.
Public sources cited: the openemr/openemr GitHub repository and its licence file, for the GPL-3.0 licence and the product description; the GNU Health and GNU Solidario websites and documentation, for the GPLv3-or-later licence, adoption as an official GNU package in 2011, the Tryton foundation and the national deployments; the Staffjoy/v2 GitHub repository, for the MIT licence and the deprecation notice carried since September 2019; TimeTrex's official forum announcement, for the discontinuation of the AGPL-3.0 Community Edition as of 2024-10-01 and the end of updates and security patches; the kiegroup/optaweb-employee-rostering GitHub repository, for the Apache 2.0 licence and the notice that the project is no longer maintained; Timefold Solver's documentation and the TimefoldAI/timefold-quickstarts repository, for the Apache 2.0 licence of the Community Edition, the April 2023 continuation of OptaPlanner and the list of shipped examples; the OR-Tools documentation, for the Apache 2.0 licence and the CP-SAT solver; the Programme de financement et de soutien professionnel pour les GMF, MSSS, 1 April 2026 edition, for the service offer, accès-réseau hours and the transmission of blocks to the orchestrator through a certified EMR; the Act to modernize legislative provisions as regards the protection of personal information (Law 25), for availability and absences qualifying as personal information. The management hours cited come from our own measurements in a pilot FMG and are not a network average. Product names belong to their respective owners and this site is not affiliated with any of them.
About the author
Félix DeBlois-Beaucage
Co-founder · development
Co-founder of Synchro. He builds the product and is the person responsible for privacy.
See what it looks like with nothing to host.
A demo on your real blocks, your real offices and your real on-call shifts, no commitment.
Book a demo