{ "name": "redlight", "private": true, "version": "2.1.2", "license": "GPL-3.0-or-later", "type": "module", "scripts": { "dev": "concurrently -n client,server -c blue,green \"vite\" \"node --watch server/index.js\"", "dev:client": "vite", "dev:server": "node --watch server/index.js", "build": "vite build", "preview": "vite preview", "start": "NODE_ENV=production node server/index.js" }, "dependencies": { "axios": "^1.7.0", "bcryptjs": "^3.0.3", "better-sqlite3": "^12.6.2", "concurrently": "^9.0.0", "cors": "^2.8.5", "dotenv": "^17.3.1", "exceljs": "^4.4.0", "express": "^4.21.0", "express-rate-limit": "^7.5.1", "flatpickr": "^4.6.13", "ioredis": "^5.10.0", "jsonwebtoken": "^9.0.0", "lucide-react": "^0.460.0", "multer": "^2.1.0", "nodemailer": "^8.0.1", "otpauth": "^9.5.0", "pdfkit": "^0.17.2", "pg": "^8.18.0", "qrcode": "^1.5.4", "rate-limit-redis": "^4.3.1", "react": "^18.3.0", "react-dom": "^18.3.0", "react-hot-toast": "^2.4.0", "react-router-dom": "^6.28.0", "uuid": "^13.0.0", "xml2js": "^0.6.0" }, "devDependencies": { "@types/react": "^18.3.0", "@types/react-dom": "^18.3.0", "@vitejs/plugin-react": "^6.0.1", "autoprefixer": "^10.4.0", "postcss": "^8.4.0", "tailwindcss": "^3.4.0", "vite": "^8.0.0" } }