Doctalk is a user-friendly web application designed to simplify the process of finding and booking appointments with qualified specialists. Whether you need a general physician, a cardiologist, or a dermatologist, Doctalk connects you with top-rated doctors in your area.
A ReactJS frontend application powered by Vite and styled using TailwindCSS. The backend is built with Node.js, Express.js, and MongoDB to provide a robust and scalable full-stack solution.
Before you begin, ensure you have the following installed:
- Node.js (v14 or higher recommended)
- npm
- MongoDB (Ensure MongoDB server is running locally or have a remote URI).
git clone https://github.com/lxmn-22/DocTalk.git
cd DocTalkcd frontend
npm installcd backend
npm installcd admin
npm create vite@latest
npm install1. Navigate to the frontend folder.
2. Start the development server:
npm run dev3. Open your browser and navigate to http://localhost:5173
1. Navigate to the backend folder.
2. Start the server:
npm run server3. The backend API will run on http://localhost:5000 (or the port specified in your .env).
1. Navigate to the admin folder.
2. Start the development server:
npm run dev3. Open your browser and navigate to http://localhost:5174
- react, react-dom: Core React libraries.
- vite: Development tool for frontend.
- tailwindcss, postcss, autoprefixer: Styling framework.
- express: Web framework for Node.js.
- mongoose: MongoDB object modeling.
- multer: Node.js middleware used for handling multipart/form-data, primarily for uploading files in web applications.
- bcrypt: a cryptographic hashing algorithm designed to securely hash passwords by incorporating a salt and a computational cost factor to defend against brute force and rainbow table attacks.
- cloudinary: a cloud-based platform that provides tools for managing, optimizing, and delivering images and videos in web and mobile applications.
- cors: a security mechanism that allows or restricts web applications running on one domain to access resources from another domain through HTTP headers.
- dotenv: Environment variable management.
- jsonwebtoken: a compact, self-contained way to securely transmit information between parties as a JSON object, often used for authentication and information exchange.
- nodemon: a tool that automatically restarts a Node.js application whenever file changes are detected during development.
- validator: a function or mechanism that checks whether input data meets specific rules or constraints.
- axios: a popular JS library for making HTTP requests from the browser or Node.js, offering a simple API with support for promises, interceptors, and request/response transformation.
- react-router-dom: a library for React that enables routing and navigation in web applications, allowing developers to define and manage routes for different components or pages.
- react-toastify: a library for displaying customizable toast notifications in React applications.