Skip to main content

Project 02 — Full-Stack REST Application

What This Is

Your second major project is a full-stack collaborative application with a real database, authenticated API, and a React frontend. This is where everything from Modules 7–16 comes together.

Technical Requirements

  • Backend: Express 5 or NestJS + TypeScript
  • Database: PostgreSQL with Prisma ORM
  • Auth: JWT (register, login, protected routes)
  • Validation: Zod or class-validator
  • Frontend: React + TypeScript (Vite)
  • Deployment: API on Railway, frontend on Vercel
  • Testing: At least 5 integration tests (Vitest)

Must-Have Features

  • User registration and login
  • At least 2 resource types with a relation (e.g. users → posts)
  • Full CRUD on the main resource
  • Protected routes (only logged-in users can create/edit/delete)
  • Pagination on list endpoints

Project Ideas

IdeaResources
Recipe appUser, Recipe, Ingredient
Task managerUser, Project, Task
Blog platformUser, Post, Comment
Movie watchlistUser, Movie, WatchlistEntry
Fitness trackerUser, Workout, Exercise

View full requirements →

View rubric →