File
Blob: package.json
| 1 | { |
| 2 | "name": "tessera", |
| 3 | "version": "0.1.0", |
| 4 | "private": true, |
| 5 | "license": "MIT", |
| 6 | "engines": { |
| 7 | "node": ">=24.11.0 <25" |
| 8 | }, |
| 9 | "type": "module", |
| 10 | "scripts": { |
| 11 | "dev": "vite dev", |
| 12 | "build": "vite build", |
| 13 | "preview": "vite preview", |
| 14 | "test": "vitest run", |
| 15 | "test:watch": "vitest", |
| 16 | "test:e2e": "playwright test -c tests/e2e/playwright.config.ts", |
| 17 | "test:client": "tsx scripts/test-client/run.ts", |
| 18 | "test:consent": "tsx scripts/test-consent/run.ts", |
| 19 | "lint": "eslint . --max-warnings=0", |
| 20 | "types:generate": "wrangler types --env-file .dev.vars.example", |
| 21 | "typecheck": "npm run types:generate && tsc -p tsconfig.json --noEmit && tsc -p tests/tsconfig.json --noEmit", |
| 22 | "db:generate": "drizzle-kit generate --config=drizzle-d1.config.ts", |
| 23 | "db:migrate": "wrangler d1 migrations apply tessera-prod --remote", |
| 24 | "db:migrate:local": "wrangler d1 migrations apply tessera-prod --local", |
| 25 | "db:seed-initial-user": "tsx scripts/seed-bootstrap-invite.ts --remote", |
| 26 | "db:seed-initial-user:local": "tsx scripts/seed-bootstrap-invite.ts --local", |
| 27 | "auth:generate": "NODE_OPTIONS='--import tsx/esm' auth generate --config src/worker/auth/cli-config.ts --output src/worker/db/schema/auth.ts -y", |
| 28 | "deploy": "npm run build && npm run db:migrate && wrangler deploy --keep-vars", |
| 29 | "format": "prettier --write .", |
| 30 | "format:check": "prettier --check ." |
| 31 | }, |
| 32 | "dependencies": { |
| 33 | "@better-auth/drizzle-adapter": "1.7.3", |
| 34 | "@better-auth/oauth-provider": "1.7.3", |
| 35 | "@fontsource-variable/hanken-grotesk": "^5.3.0", |
| 36 | "@fontsource-variable/jetbrains-mono": "^5.3.0", |
| 37 | "@fontsource/spectral": "^5.3.0", |
| 38 | "@marsidev/react-turnstile": "^1.6.1", |
| 39 | "@noble/hashes": "^2.4.0", |
| 40 | "@tanstack/react-query": "^5.102.8", |
| 41 | "better-auth": "1.7.3", |
| 42 | "drizzle-orm": "^0.45.2", |
| 43 | "hono": "^4.13.7", |
| 44 | "lucide-react": "^0.546.0", |
| 45 | "react": "^19.3.0", |
| 46 | "react-dom": "^19.3.0", |
| 47 | "react-router": "^8.3.1" |
| 48 | }, |
| 49 | "devDependencies": { |
| 50 | "@babel/core": "^8.0.1", |
| 51 | "@cloudflare/vite-plugin": "^1.54.6", |
| 52 | "@cloudflare/vitest-plugin": "^1.1.6", |
| 53 | "@eslint/js": "^10.0.1", |
| 54 | "@playwright/test": "^1.63.0", |
| 55 | "@rolldown/plugin-babel": "^0.2.4", |
| 56 | "@tailwindcss/vite": "^4.3.3", |
| 57 | "@types/node": "^24.13.4", |
| 58 | "@types/react": "^19.3.0", |
| 59 | "@types/react-dom": "^19.3.0", |
| 60 | "@typescript/native": "npm:typescript@^7.0.2", |
| 61 | "@vitejs/plugin-react": "^6.1.1", |
| 62 | "auth": "1.7.3", |
| 63 | "babel-plugin-react-compiler": "^1.0.0", |
| 64 | "drizzle-kit": "^0.31.10", |
| 65 | "eslint": "^10.10.0", |
| 66 | "eslint-plugin-react-hooks": "^7.1.1", |
| 67 | "eslint-plugin-react-refresh": "^0.5.6", |
| 68 | "globals": "^17.12.0", |
| 69 | "jose": "^6.2.12", |
| 70 | "prettier": "^3.9.6", |
| 71 | "tailwindcss": "^4.3.3", |
| 72 | "tsx": "^4.23.13", |
| 73 | "typescript": "npm:@typescript/typescript6@^6.0.2", |
| 74 | "typescript-eslint": "^8.70.0", |
| 75 | "vite": "^8.2.2", |
| 76 | "vitest": "^4.1.11", |
| 77 | "wrangler": "^4.130.0" |
| 78 | } |
| 79 | } |