Skip to content

Product-Store is a web app I've built with Angular, Express, and TypeScript. It features a responsive UI and a robust back-end for efficient product management and display.

Notifications You must be signed in to change notification settings

moh123adan/Product-Store

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 

Repository files navigation

🛒 Product-Store

Product-Store is a comprehensive product management and display platform developed using the MAEN stack (MongoDB, Angular, Express, and Node.js). This web application is designed to streamline the process of managing products, providing an intuitive interface and robust features for users.

Features 🚀

User Authentication 🔐

  • Sign Up / Login: Secure user registration and authentication using JWT.
  • User Roles: Different user roles including customers and administrators.

Product Management 📦

  • Browse Products: Customers can browse through a variety of products.
  • Add/Edit/Delete Products: Admins can manage product listings.
  • Search Functionality: Easily find products using the search feature.

Order Management 🛒

  • Place Orders: Seamless ordering process with multiple payment options.
  • Order History: View past orders and their statuses.
  • Real-time Order Tracking: Track orders in real-time from preparation to delivery.

Admin Panel 🛠️

  • User Management: Admins can view and manage all users, assign roles, and handle user-related issues.
  • Product Approval: Admins can approve or reject product listings.
  • Analytics Dashboard: View analytics and reports on user activity, orders, and revenue.

Notifications 🔔

  • Order Updates: Real-time notifications for order status updates.
  • Promotional Notifications: Send promotional messages to users.

User Dashboard 📊

  • Profile Management: Users can update their personal information and profile pictures.
  • Order Management: View and manage current and past orders.
  • Favorites: Save favorite products for easy access.

Technologies Used 🛠️

Frontend

Angular

: A TypeScript-based framework for building web applications. Tailwind CSS : Utility-first CSS framework for quickly building custom designs.

Angular Material

: UI components for Angular applications.

NgRx

: State management for Angular applications.

RxJS

: Reactive programming library for JavaScript.

Backend

  • Node.js : A JavaScript runtime environment for server-side applications.
  • Express.js : A minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.
  • MongoDB : A NoSQL database used for storing user data, product listings, orders, and more.
  • Mongoose : A MongoDB object modeling tool designed to work in an asynchronous environment.
  • JWT (JSON Web Tokens) : Used for securely transmitting information between parties as a JSON object.
  • Bcrypt : A library for hashing passwords to ensure secure storage in the database.
  • Nodemailer : Send emails with Node.js.
  • Dotenv : Loads environment variables from a .env file into process.env.
  • Cors : Middleware for enabling CORS in your Express.js application.
  • Multer : Middleware for handling multipart/form-data, primarily used for uploading files in your applications.

Setup Instructions 🛠️

Clone the Repository

 Copy code
 git clone https://github.com/yourusername/product-store.git
 cd product-store

Install Dependencies

Frontend

 cd producr-store-client
 npm install

Backend

 cd product-store-server
 npm install

Set Up Environment Variables

Create .env files in both the frontend and backend directories with appropriate configuration variables like API URLs, database connection strings, JWT secrets, and email service credentials.

Run the Development Servers

Frontend Server

 cd producr-store-client
 ng serve

Backend Server

 cd product-store-server
 npm start

Contributing 🤝 We welcome contributions from the community. If you have suggestions, find any issues, or want to add new features, please open an issue or submit a pull request on our GitHub repository.

License 📄 This project is licensed under the MIT License. See the LICENSE file for details.

Thank you for checking out Product-Store! We hope you find it useful and enjoyable to use. 🛒

Make sure you copy and paste the entire content to avoid missing any part of the markdown sy

About

Product-Store is a web app I've built with Angular, Express, and TypeScript. It features a responsive UI and a robust back-end for efficient product management and display.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published