AgentSkillsCN

mern-stack

为 MERN 应用做出技术栈决策(Next.js、pnpm 单体仓库),并在开始搭建或架构设计之前做好参考。

SKILL.md
--- frontmatter
name: mern-stack
description: Stack decisions for MERN apps (Next.js, pnpm monorepo). Reference before scaffolding or architecture work.

Locked decisions

LayerDecision
Monorepopnpm workspaces
FrontendNext.js (app router), TypeScript required
APINext.js route handlers (app/api/) by default
DatabaseMongoDB + Mongoose
ValidationZod (shared schemas in packages/shared)
Environmentslocal → non-prod → prod
Secrets.env.local for dev; AWS for production
ContainersNot required unless deployment target forces it

Project layout

code
apps/web/                 # Next.js app
  app/api/                # API route handlers
  src/server/             # Server-only code
packages/shared/          # Zod schemas, types, utilities
.github/workflows/        # CI/CD
(root configs)            # eslint, prettier, tsconfig

When to add a separate API service

Only justified if:

  • Long-running jobs exceed serverless timeouts
  • WebSocket/persistent connections required
  • Shared API serves multiple non-Next.js clients
  • Compliance requires API isolation

Default: keep API in Next.js route handlers.

Reference

For versions, env setup, and deployment patterns, see reference/mern-stack-reference.md