Skip to content

Fixes your sickness of all kind - get an appointment now

License

Notifications You must be signed in to change notification settings

ankit-3131/SickFix

Repository files navigation

DocLink

DocLink is a comprehensive healthcare platform designed to simplify the way patients book appointments and connect with doctors. The main motive of DocLink is to streamline appointment scheduling and booking through an intuitive interface, while also offering additional features such as separate logins for doctors and users, and an AI-powered chatbot for quick assistance—all built with a responsive design that works seamlessly across devices.

Table of Contents

Features

  • Appointment Scheduling & Booking:
    The primary goal of DocLink is to facilitate easy appointment scheduling and booking. Patients can view available time slots, book appointments, and manage their appointment history efficiently.

  • Separate Login for Doctors and Users:
    DocLink provides distinct authentication interfaces for doctors and patients, ensuring tailored experiences and enhanced security.

  • AI-Powered Chatbot:
    An integrated chatbot powered by advanced natural language processing assists users with health-related questions, offers appointment booking guidance, and provides quick support 24/7.

  • Responsive Design:
    Every page—whether it's the login form, appointment management, or the AI chatbot interface—is designed to be fully responsive, ensuring a smooth user experience on desktops, tablets, and smartphones.

Technology-Stack:

  1. HTML, JavaScript
  2. BootStrap CSS
  3. NodeJS, ExpressJS
  4. MongoDB

Project Overview

DocLink transforms the appointment booking experience by combining robust scheduling features with smart technology. Key aspects include:

  • Streamlined Appointment Management:
    Patients can easily search for doctors, view available slots, and book appointments online. Doctors can manage their schedules and mark appointments as completed.

  • Tailored Access:
    Separate login flows ensure that both patients and doctors access features relevant to their needs.

  • Smart Assistance:
    The AI-powered chatbot not only provides immediate responses to health queries but also guides users through the booking process, making healthcare more accessible.

  • Modern, Responsive UI:
    The platform’s design adapts to various screen sizes, ensuring usability across all devices.

Getting Started

Prerequisites

  • Node.js and npm: Make sure you have Node.js (v14 or above recommended) and npm installed on your machine.
  • Git: Ensure you have Git installed for repository management.

Installation

  1. Fork the Repository:
    Visit the DocLink GitHub repository and click the Fork button at the top-right to create your own copy.

  2. Clone Your Fork:
    Clone the forked repository to your local machine:

    git clone https://github.com/yourusername/DocLink.git
  3. Change Directory:
    Navigate into the project directory:

    cd DocLink
  4. Initialize npm (if necessary):
    If the package.json file is missing, initialize npm:

    npm init
  5. Install Dependencies:
    Install the required dependencies as specified in package.json:

    npm i
  6. env File:
    Create a .env file in the root directory to store your API keys and environment variables. For example:

    SENDGRID_API_KEY=your_api_key_here
    GEMINI_API_KEY=your_api_key_here
    MONGO_URI=your_mongodb_uri
  7. Start the Application:
    Use nodemon to run the application during development. If nodemon isn’t installed globally, install it with:

    npm install -g nodemon

    Then start the app with:

    nodemon app

Project Structure

|-- DocLink
    |-- .env
    |-- .gitignore
    |-- app.js
    |-- directoryList.md
    |-- LICENSE
    |-- package-lock.json
    |-- package.json
    |-- README.md
    |-- rough
    |-- .vscode
    |   |-- settings.json
    |-- controllers
    |   |-- configDB.js
    |   |-- doctorController.js
    |   |-- userController.js
    |-- extra useless files
    |   |-- login.ejs
    |   |-- signup.ejs
    |-- middlewares
    |   |-- checkAuth.js
    |   |-- checkAuthDoctor.js
    |   |-- multer.js
    |-- models
    |   |-- doctorModel.js
    |   |-- userModel.js
    |-- public
    |   |-- assets
    |   |   |-- appointment-banner.svg
    |   |   |-- beach_sea.jpeg
    |   |   |-- blank-profile-pic.webp
    |   |   |-- chat-bot-icon.webp
    |   |   |-- chatbot-img.png
    |   |   |-- doc-illus.jpeg
    |   |   |-- main.png
    |   |   |-- specialists.png
    |   |-- scripts
    |   |   |-- bookAppointments.js
    |   |   |-- dash-doc-script.js
    |   |   |-- dash-user.js
    |   |   |-- home.js
    |   |-- styles
    |   |   |-- bookAppointments.css
    |   |   |-- dash-doc-style.css
    |   |   |-- dash-user-style.css
    |   |   |-- doc_profile.css
    |   |   |-- healthbot.css
    |   |   |-- home.css
    |   |   |-- specialities.css
    |   |   |-- symptomBot.css
    |   |   |-- user_profile.css
    |   |-- uploads
    |       |-- 1738960906610.png
    |       |-- default.webp
    |-- routes
    |   |-- doctorRoute.js
    |   |-- userRouter.js
    |-- services
    |   |-- datasets.js
    |   |-- healthBot.js
    |   |-- sendMail.js
    |   |-- symptomBot.js
    |-- views
        |-- bookAppointments.ejs
        |-- chat.ejs
        |-- home.ejs
        |-- specialities_page.ejs
        |-- symptomBot.ejs
        |-- userDashboard.ejs
        |-- userProfile.ejs
        |-- doctor
        |   |-- doctorDashboard.ejs
        |   |-- doctorDashboardrough.ejs
        |   |-- doctorLogin.ejs
        |   |-- doctorProfile.ejs
        |   |-- doctorSignup.ejs
        |-- partials
            |-- healthBot.ejs
            |-- navbar-doc.ejs
            |-- navbar-user.ejs
            |-- pushMessage.ejs

Customization

DocLink is designed to be flexible and customizable:

  • Styling: Customize the CSS and Bootstrap classes to align with your branding.
  • Functionality: Enhance or extend features by editing the JavaScript files.
  • Responsive Design: The responsive layout ensures optimal performance on mobile, tablet, and desktop devices.

Contributing

Contributions are welcome! Please fork this repository, make your changes, and submit a pull request with your enhancements or bug fixes.

License

This project is licensed under the MIT License. See the LICENSE file for details.

MIT License

Contributors


Atharva

Ankit

Sachit

Made at:

About

Fixes your sickness of all kind - get an appointment now

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published