An open API service indexing awesome lists of open source software.

https://github.com/saim-ulhaq/appointment-scheduling-system

A healthcare appointment scheduling system built with Flask and FastAPI. Users can search for doctors by name, city, or specialty, book appointments, and confirm details effortlessly. The platform features a responsive UI and secure login system for seamless user experience.
https://github.com/saim-ulhaq/appointment-scheduling-system

angular appointment-scheduling clinic concept-showcase django flask hospital-management-system html jquery localhost middle-platform mysql php python

Last synced: 6 months ago
JSON representation

A healthcare appointment scheduling system built with Flask and FastAPI. Users can search for doctors by name, city, or specialty, book appointments, and confirm details effortlessly. The platform features a responsive UI and secure login system for seamless user experience.

Awesome Lists containing this project

README

          

# 🏥 Appointment Scheduling System

![Appointment Scheduling System](https://img.shields.io/badge/Appointment_Scheduling_System-v1.0-blue.svg)
[![Release](https://img.shields.io/badge/Release-Check%20Now-brightgreen)](https://github.com/Saim-ulhaq/Appointment-Scheduling-System/releases)

Welcome to the **Appointment Scheduling System**! This project is designed to streamline the process of booking healthcare appointments. Built using **Flask** and **FastAPI**, it allows users to easily search for doctors by name, city, or specialty, and book appointments with ease. The system also features a responsive user interface and a secure login system, ensuring a seamless experience for all users.

## Table of Contents

1. [Features](#features)
2. [Technologies Used](#technologies-used)
3. [Installation](#installation)
4. [Usage](#usage)
5. [Contributing](#contributing)
6. [License](#license)
7. [Contact](#contact)

## Features

- **Doctor Search**: Users can search for doctors based on their name, city, or specialty.
- **Appointment Booking**: Effortlessly book appointments with a few clicks.
- **Appointment Confirmation**: Receive confirmation emails for booked appointments.
- **User Registration and Login**: Secure registration and login process.
- **Responsive UI**: A user-friendly interface that works on all devices.
- **Role-Based Authorization**: Different access levels for users and admins.
- **Dashboard**: A comprehensive dashboard for users to manage their appointments.

## Technologies Used

This project utilizes a variety of technologies to deliver a robust solution:

- **Backend**: Flask, FastAPI
- **Frontend**: HTML, CSS, JavaScript, Bootstrap 5, jQuery
- **Database**: PostgreSQL
- **Others**: AJAX for asynchronous requests, Swagger for API documentation

## Installation

To get started with the Appointment Scheduling System, follow these steps:

1. **Clone the Repository**:
```bash
git clone https://github.com/Saim-ulhaq/Appointment-Scheduling-System.git
cd Appointment-Scheduling-System
```

2. **Set Up Virtual Environment**:
```bash
python -m venv venv
source venv/bin/activate # On Windows use `venv\Scripts\activate`
```

3. **Install Dependencies**:
```bash
pip install -r requirements.txt
```

4. **Set Up Database**:
- Create a PostgreSQL database.
- Update the database connection settings in the configuration file.

5. **Run Migrations**:
```bash
flask db upgrade
```

6. **Start the Application**:
```bash
flask run
```

## Usage

Once the application is running, you can access it at `http://localhost:5000`.

### User Registration

- Navigate to the registration page.
- Fill in the required fields and submit the form.
- Check your email for a confirmation link.

### Booking an Appointment

- Log in to your account.
- Search for doctors using the search feature.
- Select a doctor and choose a date and time.
- Confirm your appointment and receive an email notification.

### Dashboard

- View all your upcoming appointments.
- Cancel or reschedule appointments as needed.

## Contributing

We welcome contributions to the Appointment Scheduling System. To contribute:

1. Fork the repository.
2. Create a new branch (`git checkout -b feature-branch`).
3. Make your changes and commit them (`git commit -m 'Add new feature'`).
4. Push to the branch (`git push origin feature-branch`).
5. Create a pull request.

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

## Contact

For any questions or inquiries, feel free to reach out:

- **Email**: your-email@example.com
- **GitHub**: [Saim-ulhaq](https://github.com/Saim-ulhaq)

## Releases

To download the latest version of the Appointment Scheduling System, visit the [Releases](https://github.com/Saim-ulhaq/Appointment-Scheduling-System/releases) section. Make sure to follow the instructions for execution after downloading.

## Conclusion

The Appointment Scheduling System aims to simplify the healthcare appointment process for users and providers alike. With a focus on user experience and security, this application is a reliable tool for managing appointments efficiently.

Feel free to explore the code, contribute, and enhance this project!