The Pharmacy Website is a comprehensive web application designed for both pharmacists and customers. This website provides a user-friendly interface for users to explore, order medications, view available pharmaceutical products, and access detailed information about various drugs and their uses. Whether you're a customer seeking medical supplies or a pharmacist looking to streamline your services, this website is your ultimate platform for efficient pharmaceutical management and access.
-
React: This project uses React, a JavaScript library for building user interfaces. React's component-based architecture makes it easy to create complex UIs from small, reusable pieces of code. It also provides a virtual DOM to optimize rendering and improve app performance.
-
Node.js and Express: The backend of this project is built with Node.js, a JavaScript runtime that allows for server-side scripting. Express, a web application framework for Node.js, is used to build the web server and handle HTTP requests.
-
MongoDB and Mongoose: MongoDB, a NoSQL database, is used to store data in a flexible, JSON-like format. Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. It provides a straightforward, schema-based solution to model application data.
-
JWT for Authentication: JSON Web Tokens (JWT) are used for securely transmitting information between parties as a JSON object. In this project, JWT is used for handling user authentication and protecting routes.
-
Bootstrap and CSS: Bootstrap, a popular CSS framework, is used for designing responsive and mobile-first web pages. Custom CSS is also used for additional styling and layout design.
-
Material-UI (MUI): This project uses Material-UI, a popular React UI framework that implements Google's Material Design. It provides a set of pre-built React components that follow the best practices of user interface design. With MUI, you can build robust, consistent, and beautiful user interfaces with less effort.
- Browse through a wide range of pharmaceutical products.
- Detailed view of each product.
- Update product information as needed.
- Customers can place orders for their required medications.
- View and manage current and past orders.
- View a list of all available pharmacists.
- Access detailed profiles of pharmacists, including their specialization and experience.
- Upload and manage digital prescriptions.
- Pharmacists can view and verify prescriptions.
- Secure login system for customers and pharmacists.
- Role-based access control to protect sensitive information.
-
Home Page: Upon visiting the website, you'll land on the home page. Here, you can learn more about the pharmacy and the products it offers.
-
Registration: If you're a new user, navigate to the "Register" page to create an account. You'll need to provide some basic information like your name, email address, and password.
-
Login: If you already have an account, click on the "Login" button on the top right of the page. Enter your email address and password to log in.
-
Ordering Medications: Once logged in, you can order medications by navigating to the "Order Medications" page. Select a product, choose a quantity, and click "Order Now".
-
Viewing Orders: To view your current and past orders, go to the "My Orders" page. Here, you can also track the status of your orders.
-
Prescription Management: If you're a patient, you can upload and manage your digital prescriptions by going to the "My Prescriptions" page. Here, you can also view the status of your prescriptions.
If you're a developer interested in contributing to the project, you can install it locally and make contributions by following these steps:
- Fork the repository.
- Clone your forked repository to your local machine.
- Open two terminals.
- In the first terminal, navigate to the backend directory of the project by running
cd backend
. This is where the backend code resides. - Run
npm install
to install the necessary backend dependencies. - Run
npm start
to start the backend server. - In the second terminal, navigate to the frontend directory of the project by running
cd frontend
. This is where the frontend code resides. - Run
npm install
to install the necessary frontend dependencies. - Run
npm start
to start the frontend development server. - Create a new branch for your changes.
- Make your changes in your branch.
- Submit a pull request with a detailed description of your changes.
We welcome contributions from the community. Please ensure that your pull request provides a detailed description of the changes you propose.