Saltar al contenido principal

Requisitos previos

  • Node.js 20+
  • pnpm 10
  • Una base de datos Postgres en Neon
  • Una cuenta de Clerk con organizaciones habilitadas
  • Una cuenta de Stripe (sandbox)

Configurar el monorepo

1

Clonar e instalar

git clone https://github.com/aaronm-git/poolpuma-nextjs.git
cd poolpuma-nextjs
pnpm install
2

Configurar variables de entorno

Copia el archivo de ejemplo y completa tus credenciales:
cp apps/web/.env.example apps/web/.env.local
Variables requeridas:
  • DATABASE_URL: cadena de conexión de Neon
  • NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY / CLERK_SECRET_KEY
  • STRIPE_SECRET_KEY / STRIPE_WEBHOOK_SECRET
  • OPENAI_API_KEY: para las funciones de IA
3

Enviar el esquema de base de datos

pnpm --filter @poolpuma/db db:push
4

Iniciar el servidor de desarrollo

pnpm dev
La aplicación web corre en http://localhost:3000 y la API en http://localhost:3001.

Estructura del proyecto

poolpuma-nextjs/
├── apps/
│   ├── web/          # Frontend Next.js 16
│   ├── api/          # Backend Fastify 5
│   └── docs/         # Documentación Mintlify (este sitio)
├── packages/
│   └── db/           # Esquema Drizzle ORM y migraciones
├── reference/        # Documentos internos de producto y arquitectura
├── turbo.json        # Configuración de Turborepo
└── pnpm-workspace.yaml