Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

For-the-Badge-Python GitHub release (latest by date including pre-releases)

Travis (.com) branch GitHub last commit GitHub issues GitHub top language GitHub repo size GitHub License

GitHub forks GitHub stars



A GUI application to make and manage hospital appointments in a database!
Explore the docs »

View Demo · Report Bug · Request Feature · Make Pull Request

Table of Contents

About the Project


MedFixture is an application to book and manage the appointments of a hospital or clinic. The application itself doesn't save any data, that is, the login credentials, authentication data and patients' data is not hard programmed in the python script. The data which is handled by the application is actualy stored in an SQLite database. The appication itself can be used by several people and institutions. We just need to connect it the corresponding database.


  • Uses a master login window to access the database and make data transactions. It even has a Login as Guest feature to login for only viewing the data and not editing the database.


  • If the user forgets the password, the application also has a feature to reset the password using the saved secret questions. The option to reset password usign OTP/reset link will be pushed in the upcoming versions hopefully.


  • If logged in using an user, authenticated by the credentials from the database, a new toplevel window opens and show the profile details. It also gives options to add, edit or delete the appointments.


  • On clicking on Add Appointment, a new window to add new appointment is opened which saves new data to connected database.


  • On clicking on Edit Appointment, a new window to edit existing appointment which updates data to connected database.


  • On clicking on Delete Appointment, a new window to delete any existing appointment which is saved in the connected database.


  • On completing your work, you can simply logout your session and re-login again.


Built using

Getting Started

To use the this application on your system, you can simply clone this repository or download the .zip file. But, to run the application with all it's features, you must make proper setup and installation of libraries and prerequisites.


  • Make sure that you have Python v3.x installed on your machine. Otherwise, you can just use this command to install python3 on Ubuntu :
sudo apt install python3

Otherwise, just go here and download the python for your system.

  • To install tkinter module for python 3, use the following command:
sudo apt install python3-tk
  • Application uses SQLite3. Thus to install the module for python3, type the command:
sudo apt install sqlite3
  • The is also using Pillow which is a Python imaging library. To install the relevant module, use the following command:
sudo apt install python3-pil


  1. 👯 Clone the repository or download the .zip from here.
git clone
  1. Go to the directory:
cd MedFixture
  1. Make sure you have installed all the prerequisites and required tools and modules.

  2. Make sure you have database(database.db) file in the directory.

  3. 👨‍💻 Run from terminal/command prompt from the .



[v1.1.1] - 2020-05-31


  • The feature disables submit button to send code again unless present code(correct/incorrect) has been submitted to prevent multiple times email being sent to the registered email address.


  • Label overlapping in the reset window has been fixed.

[v1.0.0-beta.1] - 2020-05-10

A stable application has been released for public use in the beta state. Users are appreciated to test the application. You can create an issue to request a new feature or report a bug. Also, you can fork the repository and make a pull request for contributions.

[v0.2.0] - 2020-05-07


  • Added new delete window to delete the existing record in the database.


  • Improved UI and UX for the add and update window.


  • Deprecating display window (view option) from the top-level window.


Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. 🍴 Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. 🌱 Push to the Branch (git push origin feature/AmazingFeature)
  5. ⤴️ Open a Pull Request


Distributed under the GNU General Public License v3.0 License. See LICENSE for more information.


Made with ❤️ by Naman Chauhan - @techmirtz -

Project Link: :octocat: