Skip to content

aleksandromilenkov/Restore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ReStore - E-Commerce Platform

Image

πŸš€ Overview

ReStore is a modern e-commerce web application built with ASP.NET Web API and React. It allows users to browse products, add them to the cart, and complete their purchases through Stripe payments. The application includes features like authentication, order management, discount codes, admin inventory management, and more.

✨ Features

πŸ›’ Shopping & Checkout

  • Browse products with search, filtering, and pagination.
  • View product details on a separate product page.
  • Add products to the cart directly from the catalog or product page.
  • View cart items with the ability to increase, decrease, or remove items.
  • Checkout process with address input, payment via Stripe, and order summary.
  • Discount codes applied at checkout (managed via Stripe).
  • Orders are processed with Stripe webhooks for real-time payment status updates.
  • Users can view their order history.

πŸ” Authentication & User Management

  • Register & login to place orders.
  • IdentityUser with cookie-based authentication.
  • Profile page to update profile image, email, and password.
  • Logout functionality.

πŸ› οΈ Admin & Inventory Management

  • Admins can create, update, and delete products via the inventory page.
  • Product images are uploaded using Cloudinary.
  • Secure role-based access for admin functionalities.

🎨 UI/UX Features

  • Modern design with Material UI.
  • Dark mode support.
  • Toast notifications for user interactions.
  • Smooth navigation with React Router.

πŸ—οΈ Tech Stack

Backend: ASP.NET Web API

  • Entity Framework Core for database management.
  • SQL Server for data storage.
  • Cloudinary for image uploads.
  • Stripe for payment processing.
  • Middleware for exception handling & security.
  • DTOs for optimized data transfer.

Frontend: React

  • Redux Toolkit & RTK Query for state management.
  • React Hook Form for form handling.
  • Zod Schema for form validation.
  • React Router for navigation.
  • Material UI for a beautiful UI.
  • React Dropzone for file uploads.
  • JS Cookie for cookie management.
  • Toastify for user notifications.
  • Redux Persist for persisting state.

πŸ“Έ Screenshots

Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image Image

πŸ“¦ Installation & Setup

1️⃣ Clone the Repository

git clone https://github.com/aleksandromilenkov/Restore.git
cd reStore

2️⃣ Backend Setup

cd backend
# Install dependencies
dotnet restore
# Apply migrations
dotnet ef database update
# Run the API
dotnet run

3️⃣ Frontend Setup

cd frontend
# Install dependencies
yarn install  # or npm install
# Start the React app
npm run dev

🎯 Roadmap

  • βœ… Product catalog with search & filtering
  • βœ… Shopping cart functionality
  • βœ… User authentication & profile management
  • βœ… Checkout & payment with Stripe
  • βœ… Order management

🀝 Contributing

Contributions are welcome! Feel free to fork the repository and submit a pull request.

πŸ“œ License

This project is licensed under the MIT License.

πŸ“ž Contact

For inquiries or collaboration, contact me at aleksandro.macedonia@gmail.com.


⭐ If you like this project, don't forget to star the repo!

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages