File
Blob: package.json
| 1 | { |
| 2 | "name": "flamemail", |
| 3 | "version": "0.1.0", |
| 4 | "private": true, |
| 5 | "type": "module", |
| 6 | "scripts": { |
| 7 | "dev": "vite", |
| 8 | "build": "vite build", |
| 9 | "generate-types": "wrangler types --env-file .dev.vars.example", |
| 10 | "check": "npm run generate-types && tsc --noEmit -p tsconfig.json && tsc --noEmit -p tests/tsconfig.json", |
| 11 | "preview": "vite preview", |
| 12 | "test": "vitest run --project client --project worker --project scripts", |
| 13 | "test:watch": "vitest --project client --project worker --project scripts", |
| 14 | "test:client": "vitest run --project client", |
| 15 | "test:worker": "vitest run --project worker", |
| 16 | "test:scripts": "vitest run --project scripts", |
| 17 | "test:e2e": "playwright test", |
| 18 | "test:e2e:smoke": "playwright test --grep @smoke", |
| 19 | "test:ci": "npm run format:check && npm run check && npm run test", |
| 20 | "cf:typegen": "npm run generate-types", |
| 21 | "oidc:local": "oidc-mock-provider --host localhost --port 5174 --payload \"{\\\"sub\\\":\\\"7980f89b-9969-48ac-a767-35695f305157\\\"}\" --expiry 300 --skip-refresh-token", |
| 22 | "email:local": "node ./scripts/send-local-email.mjs", |
| 23 | "db:generate": "drizzle-kit generate", |
| 24 | "db:migrate": "wrangler d1 migrations apply flamemail-db --remote", |
| 25 | "db:migrate:local": "wrangler d1 migrations apply flamemail-db --local", |
| 26 | "db:push": "drizzle-kit push", |
| 27 | "db:local:migrate": "npm run db:migrate:local", |
| 28 | "db:local:init": "npm run db:migrate:local", |
| 29 | "db:local:reset": "node ./scripts/reset-local-d1.mjs && npm run db:migrate:local", |
| 30 | "deploy": "npm run db:migrate && npm run build && wrangler deploy", |
| 31 | "format": "prettier --write .", |
| 32 | "format:check": "prettier --check ." |
| 33 | }, |
| 34 | "dependencies": { |
| 35 | "@cloudflare/util-en-garde": "^8.0.14", |
| 36 | "drizzle-orm": "^0.45.1", |
| 37 | "hono": "^4.12.18", |
| 38 | "lucide-react": "^0.577.0", |
| 39 | "nanoid": "^5.1.11", |
| 40 | "openid-client": "^6.8.4", |
| 41 | "postal-mime": "^2.7.3", |
| 42 | "react": "^19.2.6", |
| 43 | "react-dom": "^19.2.6", |
| 44 | "react-router-dom": "^7.15.0" |
| 45 | }, |
| 46 | "devDependencies": { |
| 47 | "@cloudflare/vite-plugin": "^1.36.4", |
| 48 | "@cloudflare/vitest-pool-workers": "^0.16.4", |
| 49 | "@mongodb-js/oidc-mock-provider": "^0.13.12", |
| 50 | "@tailwindcss/vite": "^4.3.0", |
| 51 | "@testing-library/react": "^16.3.2", |
| 52 | "@testing-library/user-event": "^14.6.1", |
| 53 | "@types/node": "^25.7.0", |
| 54 | "@types/react": "^19.2.14", |
| 55 | "@types/react-dom": "^19.2.3", |
| 56 | "@vitejs/plugin-react": "^6.0.0", |
| 57 | "drizzle-kit": "^0.31.9", |
| 58 | "jsdom": "^29.1.1", |
| 59 | "playwright": "^1.60.0", |
| 60 | "prettier": "^3.8.1", |
| 61 | "tailwindcss": "^4.3.0", |
| 62 | "typescript": "^6.0.0", |
| 63 | "vite": "^8.0.12", |
| 64 | "vitest": "^4.1.6", |
| 65 | "wrangler": "^4.90.1" |
| 66 | } |
| 67 | } |