Estructura de Proyecto
Estructuras Generadas
Arquitectura Monorepo (Workspaces + Turborepo)
Cuando configuras un proyecto con Frontend y Backend desacoplados, Koko genera un monorepo profesional configurado con pnpm workspaces y Turborepo para compilaciones en paralelo ultrarrápidas:
my-project/
— Directorio raíz del monorepo
apps/
— Aplicaciones y servicios ejecutables
web/
— Aplicación frontend (Next.js, React, etc.)
api/
— Servidor backend (Express, Go Chi, FastAPI, etc.)
packages/
— Paquetes y configuraciones compartidas
db/
— Cliente de base de datos y esquemas de ORM
tsconfig/
— Configuraciones base de TypeScript compartidas
docker-compose.yml
— Orquestación de base de datos local y servicios
koko.config.json
— Manifiesto descriptivo del stack generado
package.json
— Configuración raíz con definición de workspaces
pnpm-workspace.yaml
— Definición de paquetes pnpm
turbo.json
— Pipeline de compilación y cache de Turborepo
README.md
— Guía de inicio y comandos del proyecto
Estructura Standalone: SaaS Starter (Next.js)
Para la receta SaaS Starter (Next.js App Router + Drizzle + Better-Auth), Koko organiza un layout limpio y escalable:
my-saas/
— Raíz del proyecto SaaS
src/
— Código fuente de la aplicación
app/
— Rutas de Next.js App Router y Server Actions
api/
— Endpoints de autenticación y webhooks
page.tsx
— Landing page principal
layout.tsx
— Layout raíz con providers
components/
— Componentes UI reutilizables (shadcn UI / Tailwind)
lib/
— Utilidades, configuración de auth y base de datos
db/
— Esquemas de Drizzle y migraciones SQL
docker-compose.yml
— Contenedor local de PostgreSQL
koko.config.json
— Registro de configuración Koko
next.config.mjs
— Configuración del compilador Next.js
Estructura Backend: Go Chi Router
Para proyectos con backend en Go, Koko implementa la arquitectura recomendada por los estándares oficiales de Golang:
api-go/
— Raíz del servidor en Go
cmd/
— Puntos de entrada de compilación
api/
main.go
— Punto de inicio e instanciación del router Chi
pkg/
— Módulos y lógica de negocio
handlers/
— Controladores HTTP y rutas
db/
— Conexión a base de datos y modelos GORM
go.mod
— Manifiesto de dependencias del módulo Go
go.sum
— Checksums de seguridad de dependencias