freeman-api
freeman-api
Section titled “freeman-api”Backend API (freemanstyleapi) para freemanstyle. Hono + Node,
arquitectura hexagonal, Postgres + Drizzle ORM.
Desarrollo
Section titled “Desarrollo”npm installcp .env.example .env # rellenar variablesnpm run devnpm run testLos tests corren sin Postgres: test/setup.ts fuerza USE_FAKE_REPOS=true
(repos in-memory vía src/infrastructure/persistence/repository-factory.ts).
Base de datos
Section titled “Base de datos”Postgres self-hosted en el VPS (Coolify), DB freemanstyle. DATABASE_URL
en .env apunta al túnel SSH local — abrilo antes de db:*/dev:
ssh -i C:\Users\camac\.ssh\id_ed25519_ladder -L 5433:127.0.0.1:5433 randy@100.105.232.32 -Nnpm run db:migrate— genera + aplica migraciones (dev)npm run db:deploy— solo aplica (deploy)npm run db:studio— explorador visualUSE_FAKE_REPOS=true— corre la API completa con repos in-memory, sin DB
En WSL: los binarios de node_modules son win32 (instalados desde Windows) —
scripts npm correrlos con el node de Windows (node.exe), no con el de nvm
(esbuild falla). Ver ADR-G035 del universo para matar servers background.
Ver CLAUDE.md y docs/ para contexto completo (CFD).