{ "name": "africa-alert-server", "version": "1.0.0", "description": "Africa Alert School Management API", "main": "src/index.js", "scripts": { "start": "node src/index.js", "dev": "nodemon src/index.js", "db:init": "node src/database/init.js", "migrate": "node scripts/migrate.js", "migrate:rollback": "node scripts/migrate.js rollback", "migrate:status": "node scripts/migrate.js status", "seed": "node scripts/seed.js", "typecheck": "tsc --noEmit --allowJs --checkJs false", "lint": "eslint . --ext .js", "test": "vitest run", "test:watch": "vitest", "lint:hygiene": "node scripts/lint-no-backups.js", "refactor:jwt-secret": "node scripts/refactor-jwt-secret.js" }, "dependencies": { "@supabase/supabase-js": "^2.107.0", "axios": "^1.17.0", "bcryptjs": "^2.4.3", "better-sqlite3": "^12.10.0", "cors": "^2.8.5", "csv-parse": "^5.6.0", "express": "^4.18.2", "jsonwebtoken": "^9.0.2", "knex": "^3.3.0", "multer": "^1.4.5-lts.1", "nodemailer": "^9.0.3", "prom-client": "^15.1.3", "swagger-jsdoc": "^6.3.0", "swagger-ui-express": "^5.0.1", "uuid": "^9.0.1", "ws": "^8.21.0" }, "devDependencies": { "@types/supertest": "^6.0.2", "eslint": "^8.57.0", "nodemon": "^3.0.3", "supertest": "^7.0.0", "vitest": "^1.6.0" } }