An open API service indexing awesome lists of open source software.

https://github.com/aamirshehzad33/e-commerence-store

A modern, feature-rich Electronics ECommerce Store with a fully functional Admin Dashboard to manage products, users, orders, and payments. Designed for high performance, scalability, and user experience, this project leverages the latest web technologies to create a seamless shopping experience.
https://github.com/aamirshehzad33/e-commerence-store

ecommerce-application ecommerce-store ecommerce-website full-stack-web-development nextjs-store nodejs-shop online-shop online-shopping-website online-store-website react-ecommerce

Last synced: 12 months ago
JSON representation

A modern, feature-rich Electronics ECommerce Store with a fully functional Admin Dashboard to manage products, users, orders, and payments. Designed for high performance, scalability, and user experience, this project leverages the latest web technologies to create a seamless shopping experience.

Awesome Lists containing this project

README

          

Electronics eCommerce Shop With Admin Dashboard in Next.js and Node.js

A modern, feature-rich Electronics ECommerce Store with a fully functional Admin Dashboard to manage products, users, orders, and payments. Designed for high performance, scalability, and user experience, this project leverages the latest web technologies to create a seamless shopping experience.

## πŸ”₯Overview

This ECommerce store allows customers to browse products, add them to the cart, checkout securely, and track their orders. Meanwhile, admins have a dedicated dashboard to manage inventory, process orders, and track business performance.

## 🌟 Key Features:

## βœ… User Features:

πŸ” Product search & filtering

πŸ›’ Add to cart & checkout

πŸ’³ Secure payment integration

πŸ”” Order tracking & email notifications

✨ User authentication & profile management

## βœ… Admin Dashboard:

πŸ“¦ Product & inventory management

πŸ‘₯ User & role management

πŸ“Š Order processing & analytics

βš™οΈ Dashboard with key business insights

## βœ… Performance & Security:

πŸš€ Optimized for high speed using SSR (Server-Side Rendering)

πŸ”’ Secure authentication using JWT

🏎️ Fast API requests with RESTful APIs

πŸ“‰ Scalable & maintainable backend

## βš™οΈ Tech Stack Used

## πŸ—οΈ Frontend (Next.js - React Framework)

βš› Next.js (Server-side rendering, Static Site Generation)

🎨 Tailwind CSS (Responsive UI & styling)

⚑ Redux Toolkit (State management)

🌍 React Query (Data fetching & caching)

πŸ“© Axios (API requests)

## πŸ”™ Backend (Node.js & Express.js)

🟒 Node.js (JavaScript runtime)

πŸš€ Express.js (Backend framework)

πŸ›’οΈ MongoDB with Mongoose (Database)

πŸ” JWT Authentication (Secure login system)

πŸ› Stripe Payment API (Online transactions)

## 🎯 Why Choose This Project?
βœ” Modern Tech Stack – Built with the latest tools & frameworks

βœ” Scalability – Supports high traffic with efficient backend handling

βœ” User-Friendly UI – Optimized for mobile & desktop users

βœ” Secure Payments – Integrated with Stripe for fast transactions

Project screenshots

Register page

![singitronic register page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/0052cc90-d61a-4a8c-b8d8-02cee1b45d13)

Login page

![singitronic logic page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/7a377bb3-330f-43a4-860f-400bf7aa0f97)

Home page

![singitronic home page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/a48c092d-1f19-4bae-a480-0b5862630e1c)

Shop page

![singitronic shop page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/1133effb-0511-40c6-aee5-119404c5af34)

Single product page

![singitronic single product page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/443ea3e2-4d32-4d15-aa3b-436cbae0eade)

Search page

![singitronic search page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/384c7f55-16ee-4966-b612-a34f5506af51)

Wishlist page

![singitronic wishlist page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/a20568d6-12fb-42e6-a5ef-583f6e79229a)

Cart page

![singitronic cart page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/b9d326be-342c-4f6a-af64-34794f6c39eb)

Checkout page

![singitronic checkout page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/a458d931-9df2-4e3d-bf3f-702c1a3ba9e9)

Admin dashboard - All orders page

![singitronic admin orders page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/498b07f4-422c-46c5-b2e4-ed2a93306b7a)

Admin dashboard - All products page

![singitronic admin products page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/e26822ab-6c7e-4474-9161-288a5bb3476f)

Admin dashboard - All categories page

![singitronic admin categories page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/9e4a54d7-5bbb-4f1b-bdab-43c1079510e1)

Admin dashboard - All users page

![singitronic admin users page](https://github.com/Kuzma02/Electronics-eCommerce-Shop-With-Admin-Dashboard-NextJS-NodeJS/assets/138793624/e14e8f2c-4377-42fd-b89b-d4868cc11b11)

Instructions



  1. When you install all the programs you need on your computer you need to download the project. When you download the project, you need to extract it.


  2. After you extract the project you need to open the project folder in your code editor and in the root create a file with the name .env.


  3. You need to put the following code in the .env file and instead of username and password put your MySQL username and password:


```
DATABASE_URL="mysql://username:password@localhost:3306/singitronic_nextjs"
NEXTAUTH_SECRET=12D16C923BA17672F89B18C1DB22A
NEXTAUTH_URL=http://localhost:3000
```


7. After you do it, you need to create another .env file in the server folder and put the same DATABASE_URL you used in the previous .env file:

```
DATABASE_URL="mysql://username:password@localhost:3306/singitronic_nextjs"
```

8. Now you need to open your terminal of choice in the root folder of the project and write:

```
npm install
```

9. Now you need to navigate with the terminal in the server folder and install everything:

```
cd server
npm install
```

10. You will need to run the Prisma migration now. Make sure you are in the server folder and write:

```
npx prisma migrate dev
```

11. Next is to insert demo data. To do it you need to go to the server/utills folder and call insertDemoData.js:

```
cd utills
node insertDemoData.js
```

12. Now you can go back to the server folder and run the backend:

```
cd ..
node app.js
```

13. While your backend is running you need to open another terminal(don't stop the backend). In the second terminal, you need to make sure you are in your root project folder and write the following:

```
npm run dev
```

14. Open http://localhost:3000 and see it live!