Focused full-stack authentication starter designed for portfolio and interview extension.
apps/
web/ Next.js auth frontend (login/register/verify/reset + protected home)
server/ Fastify auth API (JWT, refresh, email verification, password reset, OAuth)
packages/
ui/ Shared UI primitives
types/ Shared auth contracts
utils/ Shared utility helpers
config/ Shared tsconfig/eslint/prettier presets
infra/
docker/
nginx/
ci/
docs/- Email/password registration and login
- Access token + refresh token session model
- Email verification (token + code)
- Password reset (token + code)
- OAuth callback handling (Google + GitHub)
- Protected route guard and
/users/meprofile bootstrap
- Install dependencies:
pnpm install - Copy env file:
cp .env.example .env - Start apps:
pnpm dev
Web app runs on http://localhost:3002 and API on http://localhost:5001.
pnpm devrun all workspaces in dev modepnpm lintlint all workspacespnpm typecheckstrict typecheckpnpm buildproduction builds
More detail: docs/architecture.md