A web application for managing doctor appointments, built with Angular and Firebase. Allows doctors to manage their availability and patients to book appointments efficiently.
- User Authentication (Login/Register)
- Interactive Calendar View
- Manage availability
- Set absence periods
- View and manage appointments
- Cancel appointments for a day
- Book appointments
- Cancel appointments
- View appointment history
- Manage users
- Change data persistence options
- Angular 18
- Firebase (Authentication & Realtime Database)
- Angular Material
- TypeScript
- Node.js (v18 or higher)
- npm (v9 or higher)
- Firebase account and project
-
Clone the repository:
git clone https://github.com/mcjmk/doctor-appointment.git cd doctor-appointment
-
Install dependencies:
npm install
-
Set up Firebase:
- Create a new Firebase project at Firebase Console
- Enable Authentication and Realtime Database
- Get your Firebase configuration from Project Settings > General > Your apps > Web app
- Copy the environment template files:
cp src/environments/environment.template.ts src/environments/environment.ts cp src/environments/environment.template.ts src/environments/environment.development.ts
- Open both files and replace the placeholder values with your Firebase configuration:
firebaseConfig: { apiKey: 'your-api-key-here', // Replace with your API key authDomain: 'your-auth-domain-here', // Replace with your auth domain projectId: 'your-project-id-here', // Replace with your project ID storageBucket: 'your-bucket-here', // Replace with your storage bucket messagingSenderId: 'your-sender-id', // Replace with your sender ID appId: 'your-app-id-here' // Replace with your app ID }
-
Start the development server:
npm start
-
Go to to
http://localhost:4200/