|
6 | 6 | "scripts": { |
7 | 7 | "build": "next build", |
8 | 8 | "check": "pnpm run lint:fix && pnpm run typecheck && pnpm run prettier", |
9 | | - "db:push": "drizzle-kit pull --config drizzle-introspection.config.ts && drizzle-kit push --config drizzle-migrations.config.ts && supabase gen types --local > src/supabase/types.d.ts", |
10 | | - "sb:seed": "dotenv -v next_public_avatars_bucket=$NEXT_PUBLIC_AVATARS_BUCKET -- supabase seed buckets --yes", |
11 | | - "sb:start": "dotenv -- supabase start && supabase status -o env > .env.local && dotenv -- pnpm sb:seed", |
| 9 | + "db:pull": "drizzle-kit pull --config drizzle-introspection.config.ts && drizzle-kit pull --config drizzle.config.ts && rm -f src/server/db/schema/generated/relations.ts && sed -i '2a // Cross-schema FK targets — re-injected after each `drizzle-kit pull` (see db:pull in package.json)\\nimport { usersInAuth as users, oauthClientsInAuth as oauthClients } from \"~/supabase/drizzle/schema\"' src/server/db/schema/generated/schema.ts && supabase gen types --local > src/supabase/types.d.ts", |
| 10 | + "db:migrate": "supabase migration up && pnpm db:pull && pnpm db:seed-roles", |
| 11 | + "db:reset": "supabase db reset && pnpm db:pull && pnpm db:seed-roles", |
| 12 | + "db:migration:new": "supabase migration new", |
| 13 | + "db:push:remote": "dotenv -e .env.remote -- supabase db push", |
| 14 | + "db:seed-roles": "tsx scripts/seed-builtin-roles.ts", |
| 15 | + "sb:seed-buckets": "dotenv -v next_public_avatars_bucket=$NEXT_PUBLIC_AVATARS_BUCKET -- supabase seed buckets --yes", |
| 16 | + "sb:start": "dotenv -- supabase start && supabase status -o env > .env.local && dotenv -- pnpm sb:seed-buckets", |
12 | 17 | "sb:stop": "supabase stop", |
13 | 18 | "sb:restart": "pnpm sb:stop && pnpm sb:start", |
14 | | - "dev": "pnpm sb:start && pnpm db:push && pnpm next dev", |
| 19 | + "dev": "pnpm sb:start && pnpm db:migrate && pnpm next dev", |
| 20 | + "dev:remote": "dotenv -e .env.remote -- pnpm next dev", |
15 | 21 | "docs:preview": "docs-preview", |
16 | 22 | "format:check": "prettier --check \"**/*.{ts,tsx,js,jsx,mdx}\" --cache", |
17 | 23 | "format:write": "prettier --write \"**/*.{ts,tsx,js,jsx,mdx}\" --cache", |
|
25 | 31 | "typecheck": "tsc --noEmit" |
26 | 32 | }, |
27 | 33 | "dependencies": { |
28 | | - "@date-fns/tz": "^1.4.1", |
| 34 | + "@date-fns/tz": "^1.5.0", |
| 35 | + "@devdogsuga/feedback-client": "workspace:*", |
29 | 36 | "@discordjs/builders": "^1.14.1", |
30 | 37 | "@discordjs/rest": "^2.6.1", |
| 38 | + "@dnd-kit/core": "^6.3.1", |
| 39 | + "@dnd-kit/sortable": "^10.0.0", |
| 40 | + "@dnd-kit/utilities": "^3.2.2", |
| 41 | + "@floating-ui/react": "^0.27.19", |
31 | 42 | "@octokit/graphql": "^9.0.3", |
32 | 43 | "@paralleldrive/cuid2": "^3.3.0", |
33 | | - "@radix-ui/react-alert-dialog": "^1.1.15", |
34 | | - "@radix-ui/react-avatar": "^1.1.11", |
35 | | - "@radix-ui/react-collapsible": "^1.1.12", |
36 | | - "@radix-ui/react-dialog": "^1.1.15", |
37 | | - "@radix-ui/react-dropdown-menu": "^2.1.16", |
38 | | - "@supabase/ssr": "^0.10.0", |
39 | | - "@supabase/supabase-js": "^2.101.1", |
| 44 | + "@phosphor-icons/react": "^2.1.10", |
| 45 | + "@radix-ui/react-alert-dialog": "^1.1.17", |
| 46 | + "@radix-ui/react-avatar": "^1.2.0", |
| 47 | + "@radix-ui/react-collapsible": "^1.1.14", |
| 48 | + "@radix-ui/react-dialog": "^1.1.17", |
| 49 | + "@radix-ui/react-dropdown-menu": "^2.1.18", |
| 50 | + "@radix-ui/react-hover-card": "^1.1.17", |
| 51 | + "@radix-ui/react-popover": "^1.1.17", |
| 52 | + "@radix-ui/react-select": "^2.3.1", |
| 53 | + "@radix-ui/react-tooltip": "^1.2.10", |
| 54 | + "@shikijs/twoslash": "^4.2.0", |
| 55 | + "@supabase/ssr": "^0.12.0", |
| 56 | + "@supabase/supabase-js": "^2.108.2", |
40 | 57 | "@t3-oss/env-nextjs": "^0.13.11", |
41 | 58 | "@tailwindcss/forms": "^0.5.11", |
42 | | - "@tailwindcss/typography": "^0.5.19", |
43 | | - "@tanstack/react-query": "^5.96.2", |
| 59 | + "@tailwindcss/typography": "^0.5.20", |
| 60 | + "@tanstack/react-query": "^5.101.0", |
| 61 | + "@vercel/edge-config": "^1.4.3", |
| 62 | + "argon2": "^0.44.0", |
44 | 63 | "bcrypt": "^6.0.0", |
45 | | - "date-fns": "^4.1.0", |
46 | | - "discord-api-types": "^0.38.44", |
| 64 | + "class-variance-authority": "^0.7.1", |
| 65 | + "clsx": "^2.1.1", |
| 66 | + "cmdk": "^1.1.1", |
| 67 | + "date-fns": "^4.4.0", |
| 68 | + "discord-api-types": "^0.38.49", |
47 | 69 | "discord-interactions": "^4.4.0", |
48 | | - "drizzle-orm": "1.0.0-beta.21", |
49 | | - "fumadocs-core": "^16.7.11", |
50 | | - "fumadocs-ui": "^16.7.11", |
| 70 | + "drizzle-orm": "1.0.0-rc.3", |
51 | 71 | "gray-matter": "^4.0.3", |
52 | | - "next": "^16.2.2", |
| 72 | + "lucide-react": "^1.21.0", |
| 73 | + "motion": "^12.40.0", |
| 74 | + "next": "^16.2.9", |
53 | 75 | "next-mdx-remote": "^6.0.0", |
| 76 | + "next-themes": "^0.4.6", |
54 | 77 | "open-graph-scraper": "^6.11.0", |
55 | | - "postgres": "^3.4.8", |
56 | | - "react": "^19.2.4", |
57 | | - "react-dom": "^19.2.4", |
| 78 | + "otplib": "^13.4.1", |
| 79 | + "papaparse": "^5.5.3", |
| 80 | + "postgres": "^3.4.9", |
| 81 | + "radix-ui": "^1.6.0", |
| 82 | + "react": "^19.2.7", |
| 83 | + "react-dom": "^19.2.7", |
58 | 84 | "react-fast-marquee": "^1.6.5", |
59 | | - "react-icons": "^5.6.0", |
60 | 85 | "react-image-crop": "^11.0.10", |
61 | 86 | "react-markdown": "^10.1.0", |
| 87 | + "react-remove-scroll": "^2.7.2", |
| 88 | + "rehype-slug": "^6.0.0", |
62 | 89 | "remark-frontmatter": "^5.0.0", |
63 | 90 | "remark-gfm": "^4.0.1", |
64 | | - "zod": "4.1.8", |
65 | | - "zod-form-data": "^3.0.1" |
| 91 | + "shiki": "^4.2.0", |
| 92 | + "sonner": "^2.0.7", |
| 93 | + "tailwind-merge": "^3.6.0", |
| 94 | + "tw-animate-css": "^1.4.0", |
| 95 | + "unified": "^11.0.5", |
| 96 | + "zod": "4.4.3", |
| 97 | + "zod-form-data": "^3.0.2" |
66 | 98 | }, |
67 | 99 | "devDependencies": { |
68 | 100 | "@devdogsuga/docs-preview": "workspace:*", |
69 | 101 | "@eslint/eslintrc": "^3.3.5", |
70 | | - "@next/env": "^16.2.2", |
71 | | - "@supabase/auth-js": "^2.101.1", |
72 | | - "@tailwindcss/postcss": "^4.2.2", |
| 102 | + "@next/env": "^16.2.9", |
| 103 | + "@supabase/auth-js": "^2.108.2", |
| 104 | + "@tailwindcss/postcss": "^4.3.1", |
73 | 105 | "@types/bcrypt": "^6.0.0", |
74 | | - "@types/node": "^25.5.0", |
75 | | - "@types/react": "^19.2.14", |
| 106 | + "@types/hast": "^3.0.4", |
| 107 | + "@types/mdast": "^4.0.4", |
| 108 | + "@types/mdx": "^2.0.14", |
| 109 | + "@types/node": "^25.9.3", |
| 110 | + "@types/papaparse": "^5.5.2", |
| 111 | + "@types/react": "^19.2.17", |
76 | 112 | "@types/react-dom": "^19.2.3", |
77 | | - "dotenv-cli": "^10.0.0", |
78 | | - "drizzle-kit": "1.0.0-beta.21", |
79 | | - "eslint": "^9.39.4", |
80 | | - "eslint-config-next": "^15.5.14", |
| 113 | + "@types/unist": "^3.0.3", |
| 114 | + "dotenv-cli": "^11.0.0", |
| 115 | + "drizzle-kit": "1.0.0-rc.3", |
| 116 | + "eslint": "^10.5.0", |
| 117 | + "eslint-config-next": "^16.2.9", |
81 | 118 | "eslint-plugin-drizzle": "^0.2.3", |
82 | | - "postcss": "^8.5.8", |
83 | | - "prettier": "^3.8.1", |
84 | | - "prettier-plugin-tailwindcss": "^0.7.2", |
| 119 | + "postcss": "^8.5.15", |
| 120 | + "prettier": "^3.8.4", |
| 121 | + "prettier-plugin-tailwindcss": "^0.8.0", |
85 | 122 | "raw-loader": "^4.0.2", |
86 | | - "supabase": "^2.84.7", |
87 | | - "tailwindcss": "^4.2.2", |
88 | | - "turbo": "^2.9.3", |
89 | | - "typescript": "^5.9.3", |
90 | | - "typescript-eslint": "^8.58.0", |
91 | | - "vercel": "^50.38.3" |
| 123 | + "shadcn": "^4.11.0", |
| 124 | + "supabase": "^2.107.0", |
| 125 | + "tailwindcss": "^4.3.1", |
| 126 | + "tsx": "^4.22.4", |
| 127 | + "turbo": "^2.9.18", |
| 128 | + "typescript": "^6.0.3", |
| 129 | + "typescript-eslint": "^8.61.1", |
| 130 | + "unist-util-visit": "^5.1.0", |
| 131 | + "vercel": "^54.14.2" |
92 | 132 | }, |
93 | | - "packageManager": "pnpm@10.28.1" |
| 133 | + "packageManager": "pnpm@11.8.0" |
94 | 134 | } |
0 commit comments