Imported from Johan409IA/api-users-auth (
AGENTS.md). Install upstream withnpx skills add Johan409IA/api-users-auth. Copyright stays with the author.
AGENTS
PROYECTO
Este es un proyecto de una API REST de usuarios en el que se aplican buenas practicas como la arquitectura por capas, validaci贸n, manejo centralizado de errores y logging estructurado.
Stack
- Runtime: Node.js + TypeScript
- Framework: Express 5
- Validaci贸n: Zod
- Logging: Pino (pino-http)
- Seguridad: Helmet, CORS
- Gestor de paquetes: PNPM
- Linting/Formateo: Biome
- Variables de entorno: dotenv
Comandos
- Instalar dependencias:
pnpm install - Correr el proyecto:
pnpm dev - Build:
pnpm build - Iniciar en producci贸n:
pnpm start - Test:
pnpm test - Formatear:
pnpm format - Lint:
pnpm lint - Lint con fix:
pnpm lint:fix - Chequear errores:
pnpm check - Chequear y corregir:
pnpm check:fix
Convenciones en el codigo
Aplicar la arquitectura por capas y buenas practicas de desarrollo como la implementacion de patrones de dise帽o CUANDO SEA NECESARIO. Realizar comentarios en el codigo, pero escribe un comentario 煤nicamente cuando el "por qu茅" no pueda deducirse leyendo el c贸digo. Toma en cuenta esto:
- 馃煝 No comentar operaciones obvias (if, for, return, llamadas a servicios).
- 馃煝 Comentar reglas de negocio.
- 馃煝 Comentar decisiones de arquitectura o rendimiento.
- 馃煝 Comentar hacks, limitaciones y casos especiales.
- 馃煝 Comentar cualquier l铆nea que me haga pensar: "Seguro que dentro de unos meses no recordar茅 por qu茅 hice esto." Las funciones, clases, variables, etc deben estar en espa帽ol. Los nombres de los ficheros y directorios pueden estar en ingles.
Seguridad y limites
No toques esto sin mi confirmacion
- Borrar archivos
- Consultar variables de entorno o datos secretos
- Migraciones grandes
- Modificar alguna regla de negocio o estructura
Herramientas
- Usa la CLI de context7 para que busques documentacion actualizada y moderna para que se aplique buenas practicas en el codigo. Usa la skill de
find-docsque esta a nivel de usuario global para que obtengas documentaci贸n oficial y actualizada de tecnolog铆as de desarrollo. Y consulta elAGENTS.mdque tienes en tu configuracion enC:\Users\Johan Castillon\.commandcodepara que sepas como usar las herramientas disponibles. - Usa estos ejemplos de busqueda con el comando
ctx7:- ctx7 library react "How to clean up useEffect with async operations"
- ctx7 library nextjs "How to set up app router with middleware"
- ctx7 library prisma "How to define one-to-many relations with cascade delete"
- No uses
npx ctx7para buscar documentacion, por ejemplo:npx ctx7@latest docs /prisma/prisma/7.5.0 "prisma-client driver adapter pg postgresql"], usactx7directamente en la terminal, asi evitas errores. - Si por algun motivo no llegas a encontrar la informacion que necesitas, consulta la documentacion oficial de la tecnologia que est茅s utilizando, por ejemplo si es express.js, consulta la documentacion oficial de express.js https://expressjs.com/
REGLAS GENERALES
- Revisa primero el AGENTS.md para que tengas contexto del proyecto y sepas de sus reglas.
- Tomar en cuenta la version de la tecnologia usada, para la generacion del codigo y asi evitar sintaxis deprecada
- Respetar la estructura de carpetas y archivos del proyecto segun el
README.md. Si es que hay algun archivo que se quiere crear, que difiere al de la estructura, mencionar porque la quieres a帽adir y si es correcto y aprobado lo agregas y actualizar el la estructura de carpetas y archivos del proyecto en elREADME.md. - Aplicar el linter, formatear y type check de typescript, si es que esta disponible, antes de confirmar que se aplicaron bien cualquier cambio