package.json
Rama main · réplica de lectura del repositorio original.
{
"name": "zinalog",
"version": "0.3.3",
"private": true,
"scripts": {
"dev": "next dev --webpack --port ${PORT:-4000}",
"build": "next build",
"start": "next start --port ${PORT:-4000}",
"format": "prettier --write .",
"format:check": "prettier --check .",
"lint": "eslint",
"verify": "npm run lint && npm run format:check && npm test && npm run test:coverage && npm run build",
"test": "rm -rf .test-dist && tsc -p tsconfig.test.json && mkdir -p .test-dist/node_modules/next && cp tests/shims/next/server.js .test-dist/node_modules/next/server.js && node --test --test-concurrency=1 .test-dist/tests/*.test.js",
"test:coverage": "rm -rf .test-dist && tsc -p tsconfig.test.json && mkdir -p .test-dist/node_modules/next && cp tests/shims/next/server.js .test-dist/node_modules/next/server.js && node --test --experimental-test-coverage '--test-coverage-include=.test-dist/lib/admin-rate-limit.js' '--test-coverage-include=.test-dist/lib/alert-settings.js' '--test-coverage-include=.test-dist/lib/auth-abuse.js' '--test-coverage-include=.test-dist/lib/csrf.js' '--test-coverage-include=.test-dist/lib/email.js' '--test-coverage-include=.test-dist/lib/export-csv.js' '--test-coverage-include=.test-dist/lib/secret-crypto.js' '--test-coverage-include=.test-dist/lib/migrations.js' '--test-coverage-include=.test-dist/lib/fingerprint.js' '--test-coverage-include=.test-dist/lib/monitors/fields.js' '--test-coverage-include=.test-dist/lib/monitors/validation.js' '--test-coverage-include=.test-dist/lib/monitors/checks.js' '--test-coverage-include=.test-dist/lib/monitors/scheduler.js' '--test-coverage-include=.test-dist/lib/domain-utils.js' '--test-coverage-include=.test-dist/lib/whois.js' '--test-coverage-exclude=.test-dist/node_modules/**' '--test-coverage-exclude=.test-dist/.module-cache/**' --test-concurrency=1 '.test-dist/tests/*.test.js'",
"zina:make-migration": "node scripts/zina-migrate.mjs make",
"zina:migrate": "node scripts/zina-migrate.mjs up",
"zina:migrate:down": "node scripts/zina-migrate.mjs down",
"zina:migrate:drop": "node scripts/zina-migrate.mjs drop",
"zina:migrate:status": "node scripts/zina-migrate.mjs status",
"zina:migrate:restore": "node scripts/zina-migrate.mjs restore"
},
"dependencies": {
"axios": "^1.19.0",
"lucide-react": "^0.577.0",
"next": "^16.2.4",
"nodemailer": "^10.0.13",
"react": "^19.2.5",
"react-dom": "^19.2.5",
"recharts": "^3.8.1",
"resend": "^6.9.3",
"sqlite": "^5.1.1",
"sqlite3": "^6.0.1",
"uuid": "^13.0.0"
},
"overrides": {
"brace-expansion": "^5.0.8",
"minimatch": "^10.2.6",
"next": {
"postcss": "^8.5.10"
},
"sharp": "^0.35.3"
},
"devDependencies": {
"@tailwindcss/postcss": "^4.2.4",
"@types/node": "^20",
"@types/nodemailer": "^7.0.11",
"@types/react": "^19",
"@types/react-dom": "^19",
"@types/uuid": "^10.0.0",
"eslint": "^9",
"eslint-config-next": "^16.2.4",
"prettier": "^3.6.2",
"tailwindcss": "^4.2.4",
"tslib": "^2.8.1",
"typescript": "^5"
},
"allowScripts": {
"sharp@0.35.3": true,
"sqlite3@6.0.1": true,
"unrs-resolver@1.12.2": true
}
}