Logo Lanfrica

Mtumish1/Dental-Clinic

Domain:

digital infrastructurehealthcare

Record type:

software
Creator:
Mtu
Host:
This project is a Patient Appointment Scheduling Microservice built with Django and Django REST Framework. It includes authentication and authorization via Auth0 and integrates with Africa's Talking SMS API to notify patients of their appointments. # Dental Appointment Scheduling Django Microservice This project is a Patient Appointment Scheduling Microservice built with Django and Django REST Framework. It includes authentication and authorization via Auth0 and integrates with Africa's Talking SMS API to notify patients of their appointments. ## Table of Contents - Features - Tech Stack - Prerequisites - Installation - Authentication Setup (Auth0) - SMS Notifications (Africa's Talking) - API Endpoints - Running Unit Tests - Deployment - License ## Features - **Appointment Scheduling**: Patients can schedule appointments for various dental services. - **Authentication & Authorization**: Secured user authentication via Auth0 using OpenID Connect. - **SMS Notifications**: Automatic SMS notifications sent to patients upon appointment creation using Africa's Talking. - **REST API**: Provides RESTful endpoints for interacting with appointments and services. - **CI/CD Setup**: Ready for continuous integration and deployment, with unit tests for core functionality. ## Tech Stack - **Backend**: Django, Django REST Framework - **Authentication**: Auth0 (OpenID Connect) - **SMS Service**: Africa's Talking - **Database**: SQLite (can be swapped for PostgreSQL, MySQL, etc.) - **Other**: Docker (optional for deployment), CI/CD tools (GitHub Actions, etc.) ## Prerequisites Before you begin, ensure you have the following installed: - **Python**: 3.8+ - **Django**: 5.1+ - **Africa's Talking API Key**: Sign up for Africa's Talking - **Auth0 Account**: Sign up for Auth0 ## Installation 1. **Clone the repository**: ```bash git clone github.com cd dental-appointment-service ``` 2. **Set up a virtual environment**: ```bash python3 -m venv env source env/bin/activate ``` 3. **Install the dependencies**: ```bash pip install -r requirements.txt ``` 4. **Create a `.env` file in the root directory and add the following environment variables**: ```bash SECRET_KEY=your_django_secre …