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.
- Features
- Technology Stack
- Project Overview
- Getting Started
- Project Structure
- Customization
- Contributing
- License
- Contributors
-
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.
- HTML, JavaScript
- BootStrap CSS
- NodeJS, ExpressJS
- MongoDB
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.
- 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.
-
Fork the Repository:
Visit the DocLink GitHub repository and click the Fork button at the top-right to create your own copy. -
Clone Your Fork:
Clone the forked repository to your local machine:git clone https://github.com/yourusername/DocLink.git
-
Change Directory:
Navigate into the project directory:cd DocLink
-
Initialize npm (if necessary):
If thepackage.json
file is missing, initialize npm:npm init
-
Install Dependencies:
Install the required dependencies as specified inpackage.json
:npm i
-
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
-
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
|-- 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
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.
Contributions are welcome! Please fork this repository, make your changes, and submit a pull request with your enhancements or bug fixes.
This project is licensed under the MIT License. See the LICENSE file for details.
![]() Atharva |
![]() Ankit |
![]() Sachit |
---|