Skip to content

frau-azadeh/store

Repository files navigation

🛍️ Next.js E-commerce Store

Welcome to the Next.js E-commerce Store – a fully functional online shop built with modern web technologies. This project serves as an excellent hands-on learning experience in:

Next.js for server-side rendering (SSR) and static site generation (SSG)

React & TypeScript for type-safe component development

Tailwind CSS for modern styling

Redux Toolkit for state management

React Query for efficient API handling

React Hook Form for form management

JWT Authentication for user authentication

🚀 Features

🏠 Home Page with featured products

🔍 Product Page with details and reviews

🛒 Shopping Cart with state management

📝 Order Form with validation (React Hook Form)

🔐 Authentication (JWT-based login & signup)

🎛️ Admin Dashboard to manage products

🌙 Dark Mode support

⚡ Optimized performance with Next.js ISR/SSG/SSR

🛠️ Installation & Setup

1.Clone the repository:

    git clone https://github.com/frau-azadeh/store.git

    cd my-store

2.Install dependencies:

    npm install

3.Run the development server:

    npm run dev

Your application will be available at http://localhost:3000

🌍 Deployment

For production deployment, use:

    npm run build
    npm start

Check out the live demo

📚 Tech Stack

Frontend: Next.js, React, TypeScript

Styling: Tailwind CSS

State Management: Redux Toolkit

Data Fetching: React Query

Forms: React Hook Form

Authentication: JSON Web Tokens (JWT)

Backend API: Mock JSON Server / Custom API

🎯 Learning Goals

This project is designed to help you:

✅ Master Next.js fundamentals (SSR, SSG, ISR)

✅ Manage global state effectively using Redux Toolkit

✅ Handle API calls efficiently with React Query

✅ Improve UI styling with Tailwind CSS

✅ Implement authentication and authorization

✅ Optimize for SEO and performance

🛠️ Contributing

Contributions are welcome! If you find a bug or have an idea for improvement, feel free to submit a pull request. Developed with 🌻 by Azadeh Sharifi Soltani Feel free to connect and collaborate!