Giter Site home page Giter Site logo

shehab1110 / beautify Goto Github PK

View Code? Open in Web Editor NEW
5.0 1.0 0.0 303 KB

Beautify is a backend server designed to provide a comprehensive management solution for a cosmetics store. It is built using Node.js, Express.js, and MongoDB, offering a robust and scalable backend architecture.

JavaScript 100.00%
backend e-commerce express express-mongo-sanitize express-rate-limit helmet jwt mongodb mongoose morgan

beautify's Introduction

Beautify

Node.js badge Express badge MongoDB badge

Beautify is a backend server designed to provide a comprehensive management solution for a cosmetics store. It is built using Node.js, Express.js, and MongoDB, offering a robust and scalable backend architecture.

๐Ÿš€ Getting Started

To run this project locally, you need to have Node.js and MongoDB installed on your machine.

Prerequisites

  • Node.js
  • MongoDB
  • NPM or Yarn

Installation

  1. Clone this repo to your local machine using git clone https://github.com/<your-username>/beautify.git.
  2. Go to the project directory using cd Beautify.
  3. Install the dependencies using npm install or yarn install.
  4. Create a .env file in the root folder and add the following environment variables:

NODE_ENV=development PORT=3000 DATABASE=<your-mongodb-connection-string> DATABASE_PASSWORD=<your-mongodb-password> JWT_SECRET=<your-jwt-secret> JWT_EXPIRES_IN=90d JWT_COOKIE_EXPIRES_IN=90 EMAIL_USERNAME=<your-email-username> EMAIL_PASSWORD=<your-email-password> EMAIL_HOST=<your-email-host> EMAIL_PORT=<your-email-port> EMAIL_FROM=<your-email-address> STRIPE_SECRET_KEY=<your-stripe-secret-key>

Run the app using npm start or yarn start.
Open your browser and go to http://localhost:3000.

โœจ Features

  • User Authentication: Ensure secure access to protected routes and data by implementing user authentication using JSON Web Tokens (JWT). Users can securely register, log in, and access their account details.

  • Product Management: Effortlessly handle all aspects of cosmetics product management, including creation, retrieval, updating, and deletion. Each product can be defined with its name, description, price, image, category, rating, reviews, and more.

  • Order Management: Seamlessly manage customer orders, allowing for order creation, tracking, and status updates. The application supports orders with multiple products, quantities, shipping addresses, payment methods, and total prices.

  • Ratings and Reviews: Allow users to rate and review products, providing valuable feedback and insights. Display average ratings and reviews for products to help customers make informed purchasing decisions.

  • Validation and Error Handling: Implement robust validation and error handling mechanisms to ensure data integrity and provide meaningful error messages to clients. Validate user input and handle common errors gracefully.

  • Email Notifications: Enhance user experience by sending email notifications for critical events such as account creation, order confirmations, and other important updates. Utilize the SendGrid email service to reliably send notifications to users.

  • Database Integration: Seamlessly integrate with MongoDB, a powerful NoSQL database, to provide a flexible and scalable solution for data storage. Store and retrieve product information, order details, user data, ratings, and reviews efficiently.

๐Ÿ› ๏ธ Technologies

Node.js
Express
MongoDB
Mongoose
Stripe
Sendgrid
Helmet
Morgan
Bcrypt
Validator
JWT
Multer
express-rate-limit
express-mongo-sanitize
xss-clean

๐Ÿšง Project Status

This project is actively being developed and maintained, continuously adding new features and improving existing functionality. As such, there is always work to be done.

beautify's People

Contributors

shehab1110 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.