Skip to content

paghar/nodejs-nextjs-fullstack-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

71 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ›’ Node.js + Next.js Tutorial Project

This is a friendly full-stack project to help me learn and practice building modern web applications using Node.js, Express, and Next.js. It features a product catalog, shopping cart functionality, user authentication, and an admin panel for managing products.

The backend follows the MVC (Model-View-Controller) architectural pattern and is built with Node.js, Express, and TypeScript.
The frontend is a modern React application built with Next.js, TypeScript, React Hook Form, and Tailwind CSS.

πŸ“ Project Structure

/project-root
β”œβ”€β”€ /frontend   # Built with Next.js, React, TypeScript, Tailwind CSS, and React Hook Form
└── /backend    # Built with Node.js, Express, TypeScript, and PostgreSQL

πŸš€ Features

πŸ–₯️ Frontend (Next.js)

  • πŸ“¦ Product listing with responsive layout
  • πŸ›’ Shopping cart modal and item management
  • πŸ‘€ User panel with login/register functionality
  • πŸ” Admin dashboard with access control
  • πŸ”— Connects to backend API using Axios
  • πŸ’… Styled using Tailwind CSS for a modern look

πŸ”§ Backend (Node.js + Express)

  • βœ… RESTful API endpoints for products, users, and cart actions
  • πŸ” User authentication using sessions and CSRF protection
  • πŸ§‘β€πŸ’Ό Admin-only access to create, update, and delete products
  • πŸ“¦ PostgreSQL database with Sequelize ORM
  • πŸ—ƒοΈ Organized MVC architecture for maintainability
  • πŸ›‘οΈ Input validation and basic error handling

πŸ› οΈ Tech Stack

Frontend: Next.js,React ,TypeScript ,Tailwind CSS ,React Hook Form ,Axios Backend: Node.js ,Express ,TypeScript ,Sequelize ,PostgreSQL ,Express-Validator ,Express-Session

πŸ“¦ Getting Started

1. Clone the repo:

https://github.com/paghar/nodejs-nextjs-fullstack-app.git

2.Install dependencies:

cd backend
npm install

cd ../frontend
npm install

3. Set up environment variables:

  • Create .env files in both backend/ ....

4. Set up environment variables:

  • Start backend:
cd backend
npm run dev
  • Start frontend:
cd frontend
npm run dev

🎯 Goals of This Project

  • Learn full-stack development using modern tools
  • Understand API integration with the frontend
  • Practice building authentication and protected routes
  • Explore best practices with TypeScript and folder structure

About

πŸ›’ Node.js + Next.js Tutorial Project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published