package.json
Rama main · réplica de lectura del repositorio original.
{
"type": "module",
"scripts": {
"start": "npx tsx src/server.ts",
"prestart": "prisma generate",
"start:dev": "tsx src/scripts/startDev.ts",
"prestart:dev": "prisma generate",
"build": "prisma generate && tsc",
"lint": "biome lint .",
"lint:fix": "biome lint --write .",
"format": "biome format .",
"format:fix": "biome format --write .",
"check": "biome check .",
"check:fix": "biome check --write .",
"db:deploy": "prisma migrate deploy",
"db:generate": "prisma generate",
"db:migrate": "prisma migrate dev && prisma generate",
"db:reset": "prisma migrate reset && prisma generate",
"db:migrate-from-db": "prisma db pull && prisma migrate dev && prisma generate",
"db:seed": "prisma db seed",
"audit:invest-snapshots": "tsx src/scripts/auditInvestmentSnapshots.ts",
"test:unit": "prisma generate && vitest -c ./vitest.config.unit.ts",
"test:unit:run": "prisma generate && vitest run -c ./vitest.config.unit.ts",
"test:unit:ui": "prisma generate && vitest -c ./vitest.config.unit.ts --ui --coverage",
"_comment_test_integration": "Run all integration tests by default. Example usage: npm run test:integration (all tests), npm run test:integration user (runs tests matching 'user'), npm run test:integration 'user.integration.test.ts' (specific test file)",
"test:integration": "sh scripts/test-integration.sh"
},
"name": "myfin-api",
"version": "5.5.2",
"description": "NodeJS API for Myfin",
"main": "src/server.js",
"devDependencies": {
"@biomejs/biome": "^1.9.4",
"@types/cors": "^2.8.13",
"@types/express": "^5.0.3",
"@types/i18next": "^13.0.0",
"@types/node": "^24.0.10",
"@types/swagger-ui-express": "^4.1.8",
"@vitest/coverage-v8": "4.1.12",
"@vitest/ui": "4.1.12",
"dotenv-cli": "11.0.0",
"globals": "^16.3.0",
"magicast": "0.3.5",
"nodemon": "^3.0.1",
"tsx": "^4.19.2",
"typescript": "^5.9.2",
"vitest": "4.1.12",
"vitest-mock-extended": "^3.1.0"
},
"repository": {
"type": "git",
"url": "git+https://github.com/aFaneca/myfin.git"
},
"author": "António Faneca",
"license": "GPL-3.0",
"bugs": {
"url": "https://github.com/aFaneca/myfin/issues"
},
"homepage": "https://github.com/aFaneca/myfin#readme",
"dependencies": {
"@prisma/adapter-mariadb": "7.10.1",
"@prisma/client": "7.10.1",
"@types/nodemailer": "8.0.1",
"bcrypt": "^6.0.0",
"cors": "^2.8.5",
"dayjs": "^1.10.6",
"dotenv": "^17.2.1",
"express": "^5.1.0",
"express-rate-limit": "^8.0.1",
"fuzzball": "^2.2.0",
"helmet": "^8.0.0",
"i18next": "^25.4.2",
"i18next-http-middleware": "3.9.7",
"joi": "^18.0.1",
"joi-to-swagger": "^6.2.0",
"mysql2": "^3.11.5",
"nodemailer": "10.2.1",
"prisma": "7.10.1",
"swagger-ui-express": "^5.0.1",
"ts-node": "^10.9.2"
},
"engines": {
"node": "^20.19.0 || ^22.12.0 || ^24.0.0"
}
}