Next Store
NewA scalable e-commerce web application built with Next.js and PostgreSQL, featuring product listings, user authentication, and a shopping cart system.
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
- ๐ Next Store
๐ผ๏ธ Preview
๐ Home

๐ Product Details

๐๏ธ Cart

๐ 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.