package.json
Rama main · réplica de lectura del repositorio original.
{
"name": "sentrovia",
"version": "0.1.8",
"description": "Self-hosted uptime monitoring for websites, APIs, TCP ports, PostgreSQL, and cron jobs with verified alerts, evidence, and public status pages.",
"private": true,
"homepage": "https://github.com/febroine/sentrovia-monitoring",
"bugs": {
"url": "https://github.com/febroine/sentrovia-monitoring/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/febroine/sentrovia-monitoring.git"
},
"engines": {
"node": ">=20.9.0"
},
"scripts": {
"dev": "next dev",
"prebuild": "node scripts/cleanup-retired-files.mjs --source-only",
"build": "next build",
"start": "next start",
"test": "vitest run",
"test:e2e:docker": "node tests/e2e/docker-runtime.mjs",
"test:e2e:dynamic": "node tests/e2e/run-dynamic-suite.mjs",
"test:e2e:ui": "node tests/e2e/ui-interactions.mjs",
"typecheck": "tsc --noEmit",
"docker:web": "node scripts/bootstrap-runtime.mjs web",
"docker:worker": "node scripts/bootstrap-runtime.mjs worker",
"worker:dev": "tsx watch src/worker/runner.ts",
"worker:start": "tsx src/worker/runner.ts",
"lint": "eslint",
"db:generate": "drizzle-kit generate",
"db:push": "drizzle-kit push",
"db:push:bootstrap": "drizzle-kit push --force",
"db:sync": "node scripts/sync-database-schema.mjs",
"db:repair": "node scripts/repair-database.mjs",
"db:repair:dry-run": "node scripts/repair-database.mjs --dry-run",
"auth:recover-admin": "node scripts/recover-admin.mjs",
"db:manual": "node scripts/apply-manual-migrations.mjs",
"db:manual:baseline": "node scripts/apply-manual-migrations.mjs --baseline",
"backup:restore": "tsx scripts/restore-database-backup.ts",
"release:artifacts": "node scripts/create-release-artifacts.mjs",
"benchmark:scale": "node scripts/benchmark-scale.mjs"
},
"dependencies": {
"@base-ui/react": "^1.3.0",
"@next/env": "^16.3.1",
"bcryptjs": "^3.0.3",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"drizzle-orm": "^0.45.2",
"jose": "^6.2.2",
"lucide-react": "^1.7.0",
"next": "^16.3.8",
"nodemailer": "10.0.13",
"playwright": "^1.60.0",
"postgres": "^3.4.9",
"react": "19.2.4",
"react-dom": "19.2.4",
"tailwind-merge": "^3.5.0",
"tailwindcss-animate": "^1.0.7",
"tsx": "^4.22.5",
"write-excel-file": "^4.1.1",
"yaml": "^2.8.3",
"zod": "^4.3.6",
"zustand": "^5.0.12"
},
"devDependencies": {
"@tailwindcss/postcss": "^4",
"@types/node": "^20",
"@types/nodemailer": "^8.0.0",
"@types/react": "^19",
"@types/react-dom": "^19",
"drizzle-kit": "^0.31.10",
"esbuild": "0.28.1",
"eslint": "^9.39.5",
"eslint-config-next": "^16.3.8",
"postcss": "8.5.26",
"tailwindcss": "^4",
"typescript": "^5",
"vitest": "^4.1.10"
},
"overrides": {
"@esbuild-kit/core-utils": {
"esbuild": "0.25.12"
},
"nanoid": "3.3.18",
"postcss": "8.5.26",
"sharp": "0.35.4"
},
"allowScripts": {
"esbuild@0.25.12": true,
"esbuild@0.28.1": true,
"sharp@0.35.4": true,
"unrs-resolver@1.11.1": true
}
}