- node-pg-migrate + pg: baseline migration (extensions, app_meta) with working down - src/infrastructure/db fail-fast pool and typed query helper - docker-compose: postgres:16-alpine + redis:7-alpine with one-command up - table naming convention <module>_<table> documented in README - integration tests (6) against real PostgreSQL; strict identifier validation for test DDL after security-gate hardening round - deps justified in spec/tech.md; all gates approved; verify.sh green
40 lines
1.4 KiB
JSON
40 lines
1.4 KiB
JSON
{
|
|
"name": "mercadodevida-backend",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"description": "MercadoDeVida vNext backend - modular monolith skeleton",
|
|
"engines": {
|
|
"node": ">=22"
|
|
},
|
|
"scripts": {
|
|
"build": "tsc -p tsconfig.build.json",
|
|
"start": "node dist/infrastructure/http/server.js",
|
|
"lint": "eslint . && prettier --check .",
|
|
"lint:boundaries": "node scripts/check-module-boundaries.mjs src",
|
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
"test": "vitest run",
|
|
"test:integration": "node --env-file-if-exists=.env node_modules/vitest/vitest.mjs run itest",
|
|
"docker:up": "docker compose up -d --wait",
|
|
"docker:down": "docker compose down",
|
|
"db:up": "node --env-file-if-exists=.env node_modules/node-pg-migrate/bin/node-pg-migrate.js up --migrations-dir migrations",
|
|
"db:down": "node --env-file-if-exists=.env node_modules/node-pg-migrate/bin/node-pg-migrate.js down --migrations-dir migrations",
|
|
"db:status": "node --env-file-if-exists=.env scripts/db-status.mjs"
|
|
},
|
|
"dependencies": {
|
|
"fastify": "^5.2.0",
|
|
"node-pg-migrate": "^9.0.0",
|
|
"pg": "^8.23.0"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "^9.17.0",
|
|
"@types/pg": "^8.21.0",
|
|
"eslint": "^9.17.0",
|
|
"eslint-config-prettier": "^10.0.0",
|
|
"prettier": "^3.4.0",
|
|
"typescript": "^5.7.0",
|
|
"typescript-eslint": "^8.18.0",
|
|
"vitest": "^3.0.0"
|
|
}
|
|
}
|