Skip to content

A python GUI application using Tkinter and SQlite database for fixing hospital appointments

License

Notifications You must be signed in to change notification settings

chauhannaman98/MedFixture

Repository files navigation

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


Logo

MedFixture

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

what-is-it-window

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.

Features

  • 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.

master-login

  • 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.

master-login

  • 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.

menu-bar

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

add-appointment

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

update-appointment

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

delete-appointment

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

logout-warning

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.

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 master.py is also using Pillow which is a Python imaging library. To install the relevant module, use the following command:
sudo apt install python3-pil

Installation

  1. 👯 Clone the repository or download the .zip from here.
git clone https://github.com/chauhannaman98/MedFixture.git
  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 master.py from terminal/command prompt from the .

python3 master.py

Changelog

[v1.1.1] - 2020-05-31

Added:

  • 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.

Fixed:

  • 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:

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

Changed:

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

Deprecated:

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

Contributing

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

License

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

Contact

Made with ❤️ by Naman Chauhan - @techmirtz - chauhannaman98gmail.com

Project Link: :octocat: https://github.com/chauhannaman98/MedFixture

Acknowledgements