Skip to content

aelaraby6/Rochetta

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💊 Rochetta – Online Pharmacy Platform

Rochetta is a MERN-Stack web application that provides a seamless experience for users to purchase medicines online and for admins to manage pharmacy operations.

demo.mp4

🚀 Features

👤 User Features

  • Browse medicines by categories.
  • Choose between purchasing a strip or a full box, just like a real pharmacy.
  • Add medicines to the Cart and manage quantities.
  • Place an Order.
  • Some medicines require a prescription (cannot be purchased without a prescription).

🛠️ Admin Features

  • Add new products with images, prices, and details.
  • Edit or delete existing products.
signup login cart

🖥️ Tech Stack

Frontend

  • React.js
  • React Router DOM
  • Bootstrap
  • Axios

Backend

  • Node.js
  • Express.js
  • MongoDB + Mongoose
  • JWT Authentication & Bcrypt for password hashing
  • Cloudinary for product image uploads
  • Rate Limiting for security
  • Validation with Joi for request validation
  • Swagger for API documentation

🎨 Frontend – Features

  • Home Page – Showcase top products and quick navigation to categories.
  • Cart Page – View, update, and remove products from the cart.
  • Profile Page – Display user details and manage account.
  • Categories Page – Browse products by category.
  • Authentication – Sign Up & Login functionality with JWT stored in Local Storage.
  • Dark Mode – Toggle between light and dark themes.
  • Product Search – Search for products by name or keyword.
  • 404 Page – Custom page for invalid routes.
  • Responsive Design – Built with Bootstrap for mobile-friendly UI.

⚙️ Backend – Features

  • Authentication & Authorization – Secure login/register using JWT & bcrypt with role-based access (User/Admin).
  • Product Management – Admin can add, edit, and delete products with images uploaded to Cloudinary.
  • Order Management – Create, update, and manage orders with different statuses.
  • Cart Management – Add, update, and remove items in the cart.
  • Validation – Request validation with Joi for products, users, and orders.
  • Security – Implemented Rate Limiting and password hashing to prevent brute-force attacks.
  • API Documentation – Integrated Swagger UI for interactive API exploration and testing.
  • Database – Built with MongoDB & Mongoose for schema modeling and data relationships.

🎯 Use Cases

Admin Auth User

🗂️ ERD

Below is the ERD representation of the system:

erd

📸 API Endpoints – Screenshots

Here are sample screenshots from Swagger UI showing the API endpoints:

first second

👥 Contributors

Thanks goes to these wonderful people in the Fullstack team:


Abdelrahman Elaraby

Abdelrahman Selim

About

Full-stack online pharmacy platform for browsing, managing, and purchasing medicines online

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •