Ujjalzaman / Doctor-Appointment

A doctor appointment can be obtained by a patient through this website.
https://doctoroncall-bd.netlify.app/
244 stars 161 forks source link
admin-dashboard appointment-scheduling apppointment bootstrap bootstrap4 doctor doctor-appointment-booking doctor-appointment-management expressjs full-stack full-stack-react-project javascript mern-project project react react-full-project reactjs ujjal

Doctor Appointment - Full Stack Appointment Website

For purchases or inquiries, please contact us here.

Contact: https://quber.com.au/#contact

Installation video

YouTube    

Preview    Live Preview

To Setup Project Follow project_setup.txt documentation

About The Project

The DoctorOnCall System facilitates patients in scheduling appointments with preferred doctors or Emergency Appointments set up via an online platform. Developed using the React, Nodejs, and Prisma stack, it offers a professional website with dynamic functionalities. Key features include dynamic home, Email Notification, Filtering doctors, Setting up appointments and patients/doctors dashboards, secure user login with validation mechanisms, appointment scheduling with access to doctor details, patient appointment management, doctor selection, and overall industries level code splitting followed.

What Features Will You Find Here:

Getting Started

To begin using the DoctorOnCall System, follow these simple steps:

Prerequisites

Before getting started with the DoctorOnCall System, ensure that you have the following prerequisites installed and set up:

Installation

To begin using the DoctorOnCall System, follow these simple steps:

The front-end and Backend code are in the same directory, with the Backend API located at the ./api directory

# Setup Documentation

## Clone The Project
git clone https://github.com/Ujjalzaman/Doctor-Appointment.git

### Install Frontend
cd Doctor-Appointment
- npm install
- npm start

### Install Backend
cd api
- npm install

### Setup Database
1. Rename .env.example to .env (remove .example).
2. Create a PostgreSQL Database (Railway if you don't have one installed locally):
   - Create an account at https://railway.app/.
   - Navigate to the New Section > Database > Add PostgreSQL.
   - Select your created database and go to the Variables tab.
   - Copy DATABASE_PUBLIC_URL.
   - Paste the database URL into the .env file.

### Install Prisma
- npm install -g prisma
- npx prisma generate
- npx prisma migrate dev

### Setup Google App Password (For Email Notification)
1. Go to Google Account settings at https://myaccount.google.com/security?hl=en.
2. Navigate to Security > 2-Step Verification.
3. Scroll to the bottom of the page and find App passwords.
4. Select your project name and copy the generated password.
5. Paste the app password into .env as EMAIL_PASS.

### Setup Cloudinary to Upload Image
1. Create a Cloudinary Account at https://cloudinary.com/.
2. Login to your Cloudinary Account and copy all the credentials (e.g., Cloud name, API key, API secret).
3. Paste those credentials into the .env file.

### Start Backend
npm run dev

Happy coding! 🚀

Note: Please note that these are general instructions for setting up an Express API, and the specific implementation details may vary depending on your project's requirements. Before starting, make sure to read the project's documentation or readme file to obtain any specific instructions or requirements.

This system offers a comprehensive and dynamic platform for managing doctor appointments, treatments, and patient interactions while maintaining high standards of code quality and user experience.

What Technology Are Using In This Project

Frontend Technology Stack:

Back-End:

Contributing:

  1. Fork the repository by clicking the "Fork" button on the top right corner of the project's GitHub page. This will create a copy of the project in your own GitHub account.

  2. Clone the forked repository to your local machine by running the command git clone https://github.com/your-username/online-doctor-appointment.git in your terminal.

  3. Install the project's dependencies by running npm install or yarn install in the project's root directory. Create a new branch for your changes by running the command git checkout -b branch-name, where branch-name is a descriptive name for your branch. Make your desired changes to the code.

  4. Test your changes locally by running npm start or yarn start and accessing the project in your web browser at http://localhost:3000 or another specified URL.

  5. Add and commit your changes to your local repository by running the command git add . followed by git commit -m "Your commit message here"

  6. Push your changes to your forked repository by running the command git push origin branch-name

  7. Create a pull request (PR) by navigating to your forked repository on GitHub and clicking the "New pull request" button. Make sure that the base branch is set to the original project's branch that you want to contribute to, and the head branch is set to your forked repository's branch that contains your changes.

  8. Write a descriptive title and message for your pull request, explaining the changes you made and why they should be merged. Wait for the project's maintainers to review your pull request and provide feedback. You may be asked to make further changes or address any issues before your changes are merged.

  9. Once your pull request is approved and merged, your changes will become part of the project. Congratulations, you have successfully contributed to the project!

Thank you for considering this project. If you have any questions, please do not hesitate to contact me.

Contact Me

Quber: https://quber.com.au/