Skip to content

Derrick-Ryan-Giggs/Power-Learn-Final-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

23 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MediLink - Medical Doctor Booking Appointment System

πŸ₯ Project Overview

MediLink is a medical appointment booking system designed to simplify the process of scheduling medical consultations. The platform provides intuitive interfaces for patients, doctors, and administrators to manage healthcare appointments efficiently.

🌟 Features

Patient Features

  • User registration and profile management
  • Doctor search and discovery
  • Easy appointment booking
  • View upcoming appointments
  • Cancel or reschedule appointments

Doctor Features

  • Professional profile creation
  • Availability management
  • Appointment scheduling
  • View and manage appointments

Admin Features

  • User and doctor management
  • Appointment oversight
  • System configuration

πŸ“Έ Project Screenshots

MediLink Patient Portal

Patient Login Page Patient login interface with secure authentication

Doctor Search Doctor search and filtering functionality

Appointment Booking Intuitive appointment scheduling interface

Patient Dashboard Patient dashboard showing upcoming appointments

Admin & Doctor Dashboard

Admin Login Secure admin authentication portal

Doctor Management Admin interface for managing doctor profiles

Appointment Overview Comprehensive appointment management system

Doctor Schedule Doctor's interface for managing availability

πŸ›  Tech Stack

Frontend

  • React (Vite)
  • Tailwind CSS
  • React Router
  • Axios
  • State Management

Backend

  • Node.js
  • Express.js
  • MongoDB
  • Mongoose
  • JWT Authentication
  • Cloudinary (Image Storage)

Deployment

πŸ“¦ Project Structure

MediLink/
β”‚
β”œβ”€β”€ MediLink/           # Frontend Application
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   β”œβ”€β”€ context/
β”‚   β”‚   └── utils/
β”‚
β”œβ”€β”€ admin/              # Admin Dashboard
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   └── utils/
β”‚
└── backend/            # Backend Services
    β”œβ”€β”€ config/
    β”œβ”€β”€ controllers/
    β”œβ”€β”€ models/
    β”œβ”€β”€ routes/
    └── middlewares/

πŸš€ Getting Started

Prerequisites

  • Node.js (v16+)
  • npm or yarn
  • MongoDB Atlas account
  • Cloudinary account

Installation

  1. Clone the repository
git clone https://github.com/Derrick-Ryan-Giggs/Power-Learn-Final-Project
cd MediLink
  1. Install Dependencies
# Frontend
cd MediLink
npm install

# Admin
cd ../admin
npm install

# Backend
cd ../backend
npm install
  1. Environment Variables

Frontend .env

VITE_API_BASE_URL=http://localhost:4000/api

Backend .env

PORT=4000
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
CLOUDINARY_CLOUD_NAME=your_cloudinary_cloud_name
CLOUDINARY_API_KEY=your_cloudinary_api_key
CLOUDINARY_API_SECRET=your_cloudinary_api_secret

Running Locally

  1. Start Backend
cd backend
npm run dev
  1. Start Frontend
cd MediLink
npm run dev
  1. Start Admin Dashboard
cd admin
npm run dev

🌐 Deployment

Frontend & Admin (Vercel)

  • MediLink (Patients): Live Link
  • Admin & Doctor Dashboard: Live Link
  • Connect GitHub repository
  • Set root directory
  • Configure build settings
  • Set environment variables

Backend (Render)

  • Web Service deployment
  • Set environment variables
  • Configure build and start commands

πŸ”’ Security Features

  • JWT Authentication
  • Password Encryption
  • CORS Configuration
  • Environment-based Configuration
  • Input Validation

πŸ“Š Key Technologies

Frontend

React
Tailwind CSS
Vite

Backend

Node.js
Express.js
MongoDB

🀝 Contributing

  1. Fork the repository
  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 MIT License. See LICENSE for more information.

πŸ“ž Contact

Your Name - [email protected]

Project Repository: GitHub

πŸ™ Acknowledgements

  • React
  • Tailwind CSS
  • Node.js
  • Express
  • MongoDB
  • Cloudinary

Releases

No releases published

Packages

No packages published

Languages