rmb

Next Store

New

A scalable e-commerce web application built with Next.js and PostgreSQL, featuring product listings, user authentication, and a shopping cart system.

Next Store
ReactNext.jsTypeScriptTailwind CSSZustandPrismaNeonPostgreSQL

๐Ÿ›’ Next Store

A modern, full-featured e-commerce application built with Next.js (App Router), TypeScript, and Tailwind CSS. Next Store offers a seamless shopping experience with persistent cart, user authentication, product reviews, AI-powered review summaries, and a robust admin dashboard. The platform leverages scalable technologies such as Zustand for state management, Prisma with Neon for the database, and Resend for secure email verification and notifications.


๐Ÿ“š Table of Contents


๐Ÿ–ผ๏ธ Preview

๐Ÿ  Home Home page

๐Ÿ›’ Product Details Product details

๐Ÿ›๏ธ Cart Cart

๐ŸŒž Light Mode Light mode


โœจ Features

๐Ÿ›๏ธ Storefront

  • ๐Ÿ—‚๏ธ Product browsing by category
  • ๐Ÿ“„ Product detail pages
  • โž• Add products to the cart
  • ๐Ÿ›’ Cart with persisted state
  • ๐Ÿงพ Generate orders

๐Ÿ‘ค User & Admin

  • ๐Ÿ”‘ User authentication and roles
  • ๐Ÿ‘ค User profile and order history
  • โญ Product reviews by users
  • ๐Ÿค– AI-generated summary of reviews
  • ๐Ÿ› ๏ธ Admin section to manage orders, users, products, and hero slider

๐ŸŽจ UI/UX

  • ๐ŸŒ“ Theme switcher (light/dark/system)
  • ๐Ÿ“ฑ Responsive layout
  • ๐Ÿงฉ Component-based UI

๐Ÿ› ๏ธ Tech Stack

โš™๏ธ Core

  • โšก Framework: Next.js (App Router)
  • ๐ŸŸฆ Language: TypeScript

๐ŸŽจ Styling & UI

  • ๐ŸŽจ Styling: Tailwind CSS
  • ๐Ÿ–ผ๏ธ Icons: react-icons (Io5)
  • ๐ŸŒ€ Component Animations: Framer Motion

๐Ÿ—„๏ธ State & Data

  • ๐Ÿ—ƒ๏ธ State Management: Zustand
  • ๐Ÿ›ข๏ธ ORM: Prisma
  • ๐ŸŸฉ Database: Neon (PostgreSQL)
  • ๐Ÿ“ Form Validation: Zod, React Hook Form

๐Ÿ” Authentication & Authorization

  • ๐Ÿ”’ Auth: NextAuth.js

๐Ÿ–ผ๏ธ Media & ๐Ÿค– AI

  • ๐Ÿ–ผ๏ธ Image Hosting: Cloudinary
  • ๐Ÿค– AI Summaries: Anthropic Claude

โœ‰๏ธ Communication & โฐ Automation

  • โœ‰๏ธ Email: Resend (verification & notifications)
  • โฐ Scheduling/Cron: Vercel Cron

๐Ÿง‘โ€๐Ÿ’ป Developer Experience

  • ๐Ÿงช Testing: Jest, React Testing Library (recommended)
  • ๐Ÿงน Linting/Formatting: ESLint, Prettier, prettier-plugin-tailwindcss
  • โš™๏ธ Environment Management: dotenv

๐Ÿ“ Project Structure

src/
  actions/                  # Server actions (business logic, DB, API, etc.)
  app/                      # Next.js app directory (routing, layouts, API endpoints)
    (auth)/                 # Auth pages (login, register)
    (shop)/                 # Shop pages (cart, category, checkout, product, etc.)
    api/                    # API routes (auth, cron, upload, etc.)
  components/               # Reusable UI and feature components
  config/                   # App-wide configuration (fonts, etc.)
  lib/                      # Utilities, adapters, and helpers
    adapters/               # e.g., bcrypt
    db/                     # Prisma client, schema, seed, migrations, data
    utils/                  # Utility functions (formatting, etc.)
  store/                    # Zustand stores (cart, theme, UI, address)
  types/                    # TypeScript types (product, user, etc.)

๐Ÿ† Best Practices

  • Single Responsibility: Each module, component, and function do one thing well.
  • Clear Naming: Descriptive names for files, functions, and variables.
  • Modular Design: Organized code by feature and responsibility for maintainability and scalability.
  • Validation & Security: All user input is validated (Zod) and sensitive actions require authentication.
  • Async/Await: All asynchronous operations use async/await for clarity and error handling.
  • Environment Variables: Secrets and configuration are managed via environment variables.
  • Error Handling: All actions and API routes handle errors gracefully and provide meaningful feedback.
  • No Over-Engineering: Only implemented features and abstractions as needed (YAGNI principle).
  • Consistent Styling: Tailwind CSS utility classes for a unified and modern UI.
  • Automated Cleanup: Scheduled tasks (Vercel Cron) to keep the database clean of unverified users/newsletters.
Published: 29/11/2025

Related Projects

Chatbot App
A full-stack AI-powered chatbot, designed for fast, friendly, and interactive support.
Movies App
A modular, scalable Angular 20+ application for browsing, searching, and managing movies. Built with best practices for maintainability, performance, and clarity
Movies API
A server-side application built with NestJS and TypeScript for managing movies, user favorites, authentication, and API keys.