Skip to content

Commit 9720f35

Browse files
committed
feat(add supabase/ssr, next-safe-action and shadcn ui defaults): complete rewrite
Complete rewrite of auth. Removed auth-helpers and moved to supabase/ssr. More server auth preferred over client auth. Removed usage of useQuery and moved to next-safe-action BREAKING CHANGE: Complete rewrite of auth. Removed auth-helpers and moved to supabase/ssr. More server auth preferred over client auth. Removed usage of useQuery and moved to
1 parent 536700d commit 9720f35

File tree

161 files changed

+22253
-11661
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

161 files changed

+22253
-11661
lines changed

.eslintrc.cjs

+2-25
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ module.exports = {
1818
plugins: ['@typescript-eslint', 'prettier'],
1919
rules: {
2020
'prettier/prettier': 1,
21+
'@typescript-eslint/no-unused-vars': 1,
2122
},
2223
files: ['src/**/*.ts', 'src/**/*.tsx'],
2324
},
@@ -41,31 +42,7 @@ module.exports = {
4142
},
4243
files: ['e2e/**/*.spec.ts'],
4344
},
44-
{
45-
extends: ['eslint:recommended', 'prettier', 'esnext'],
46-
files: '*.mjs',
47-
rules: ruleOverrides,
48-
},
49-
// make nextconfig.mjs node environment
50-
{
51-
extends: ['eslint:recommended', 'prettier', 'node'],
52-
files: 'next.config.mjs',
53-
rules: ruleOverrides,
54-
},
55-
{
56-
extends: ['prettier'],
57-
files: '*.js',
58-
rules: ruleOverrides,
59-
},
60-
{
61-
extends: ['prettier'],
62-
files: '*.cjs',
63-
rules: ruleOverrides,
64-
parserOptions: {
65-
ecmaVersion: 2020,
66-
sourceType: 'module',
67-
},
68-
},
6945
],
7046
root: true,
47+
ignorePatterns: ['*.js', '*.mjs', '*.cjs', '*.json'],
7148
};

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
.env.local
2+
.env.*.local
23
node_modules
34
tsconfig.tsbuildinfo
45
supabase/.temp/project-ref

.vscode/settings.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
"editor.defaultFormatter": "esbenp.prettier-vscode",
44
"editor.formatOnSave": true,
55
"editor.codeActionsOnSave": {
6-
"source.fixAll.eslint": "explicit"
6+
"source.fixAll.eslint": "explicit",
7+
"source.organizeImports": "explicit",
8+
"source.sortMembers": "explicit"
79
},
810
"eslint.codeActionsOnSave.rules": ["!@typescript-eslint/*", "*"],
911
"typescript.tsdk": "node_modules/typescript/lib",

components.json

+7-3
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,15 @@
66
"tailwind": {
77
"config": "tailwind.config.js",
88
"css": "src/app/globals.css",
9-
"baseColor": "slate",
10-
"cssVariables": false
9+
"baseColor": "zinc",
10+
"cssVariables": true,
11+
"prefix": ""
1112
},
1213
"aliases": {
1314
"components": "@/components",
14-
"utils": "@/lib/utils"
15+
"utils": "@/lib/utils",
16+
"ui": "@/components/ui",
17+
"lib": "@/lib",
18+
"hooks": "@/hooks"
1519
}
1620
}

next-env.d.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
/// <reference types="next/image-types/global" />
33

44
// NOTE: This file should not be edited
5-
// see https://nextjs.org/docs/basic-features/typescript for more information.
5+
// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information.

next.config.mjs

-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
11
export default {
2-
experimental: {
3-
serverActions: true,
4-
},
52
images: {
63
remotePatterns: [
74
{

package.json

+85-54
Original file line numberDiff line numberDiff line change
@@ -12,91 +12,122 @@
1212
"test:e2e": "playwright test",
1313
"test": "vitest --root src --run",
1414
"test:watch": "vitest --root src",
15-
"lint:eslint": "yarn eslint --fix src",
15+
"lint:eslint": "pnpm eslint --fix src",
1616
"lint:prettier": "prettier --write src",
17-
"lint": "yarn lint:eslint && yarn lint:prettier",
17+
"lint": "pnpm lint:eslint && pnpm lint:prettier",
1818
"tsc": "tsc",
1919
"commit": "cz",
2020
"prepare": "husky install",
2121
"postbuild": "next-sitemap --config next-sitemap.config.cjs"
2222
},
2323
"dependencies": {
24-
"@commitlint/config-conventional": "^17.4.4",
25-
"@headlessui/react": "^1.7.11",
26-
"@heroicons/react": "^2.0.16",
27-
"@hookform/resolvers": "^3.3.1",
28-
"@radix-ui/react-context-menu": "^2.1.3",
29-
"@radix-ui/react-dialog": "^1.0.2",
30-
"@radix-ui/react-dropdown-menu": "^2.0.2",
31-
"@radix-ui/react-hover-card": "^1.0.5",
32-
"@radix-ui/react-label": "^2.0.2",
33-
"@radix-ui/react-navigation-menu": "^1.1.1",
34-
"@radix-ui/react-popover": "^1.0.5",
35-
"@radix-ui/react-select": "^1.2.0",
36-
"@radix-ui/react-slider": "^1.1.1",
37-
"@radix-ui/react-slot": "^1.0.2",
38-
"@radix-ui/react-switch": "^1.0.2",
39-
"@supabase/auth-helpers-nextjs": "^0.8.1",
24+
"@commitlint/config-conventional": "^17.8.1",
25+
"@headlessui/react": "^1.7.19",
26+
"@heroicons/react": "^2.1.5",
27+
"@hookform/resolvers": "^3.9.0",
28+
"@radix-ui/react-accordion": "^1.2.0",
29+
"@radix-ui/react-alert-dialog": "^1.1.1",
30+
"@radix-ui/react-aspect-ratio": "^1.1.0",
31+
"@radix-ui/react-avatar": "^1.1.0",
32+
"@radix-ui/react-checkbox": "^1.1.1",
33+
"@radix-ui/react-collapsible": "^1.1.0",
34+
"@radix-ui/react-context-menu": "^2.2.1",
35+
"@radix-ui/react-dialog": "^1.1.1",
36+
"@radix-ui/react-dropdown-menu": "^2.1.1",
37+
"@radix-ui/react-hover-card": "^1.1.1",
38+
"@radix-ui/react-label": "^2.1.0",
39+
"@radix-ui/react-menubar": "^1.1.1",
40+
"@radix-ui/react-navigation-menu": "^1.2.0",
41+
"@radix-ui/react-popover": "^1.1.1",
42+
"@radix-ui/react-progress": "^1.1.0",
43+
"@radix-ui/react-radio-group": "^1.2.0",
44+
"@radix-ui/react-scroll-area": "^1.1.0",
45+
"@radix-ui/react-select": "^1.2.2",
46+
"@radix-ui/react-separator": "^1.1.0",
47+
"@radix-ui/react-slider": "^1.2.0",
48+
"@radix-ui/react-slot": "^1.1.0",
49+
"@radix-ui/react-switch": "^1.1.0",
50+
"@radix-ui/react-tabs": "^1.1.0",
51+
"@radix-ui/react-toast": "^1.2.1",
52+
"@radix-ui/react-toggle": "^1.1.0",
53+
"@radix-ui/react-toggle-group": "^1.1.0",
54+
"@radix-ui/react-tooltip": "^1.1.2",
55+
"@supabase/auth-helpers-nextjs": "^0.8.7",
4056
"@supabase/auth-helpers-react": "^0.3.1",
41-
"@supabase/supabase-js": "^2.31.0",
42-
"@tailwindcss/typography": "^0.5.9",
43-
"@tanstack/react-query": "^4.24.10",
57+
"@supabase/ssr": "^0.5.1",
58+
"@supabase/supabase-js": "^2.45.3",
59+
"@tailwindcss/forms": "^0.5.9",
60+
"@tailwindcss/typography": "^0.5.15",
61+
"@tanstack/react-query": "^4.36.1",
4462
"class-variance-authority": "^0.7.0",
45-
"clsx": "^2.0.0",
63+
"clsx": "^2.1.1",
64+
"cmdk": "1.0.0",
65+
"date-fns": "^3.6.0",
66+
"embla-carousel-react": "^8.2.1",
67+
"framer-motion": "^11.5.4",
68+
"input-otp": "^1.2.4",
4669
"lucide-react": "^0.279.0",
47-
"next": "^14.0.3",
70+
"next": "^14.2.8",
71+
"next-nprogress-bar": "^2.3.13",
72+
"next-safe-action": "^7.9.0",
4873
"next-seo": "^5.15.0",
49-
"next-sitemap": "^3.1.52",
74+
"next-sitemap": "^3.1.55",
5075
"next-themes": "^0.2.1",
51-
"react": "^18.2.0",
52-
"react-dom": "^18.2.0",
53-
"react-hook-form": "^7.46.2",
76+
"path-to-regexp": "^8.0.0",
77+
"react": "^18.3.1",
78+
"react-day-picker": "8.10.1",
79+
"react-dom": "^18.3.1",
80+
"react-hook-form": "^7.53.0",
5481
"react-hot-toast": "^2.4.1",
5582
"react-no-ssr": "^1.1.0",
83+
"react-resizable-panels": "^2.1.2",
84+
"recharts": "^2.12.7",
5685
"rooks": "^7.14.1",
57-
"sonner": "^1.0.3",
86+
"server-only": "^0.0.1",
87+
"sonner": "^1.5.0",
5888
"tailwind-merge": "^1.14.0",
59-
"tailwindcss": "^3.2.7",
89+
"tailwindcss": "^3.4.10",
6090
"tailwindcss-animate": "^1.0.7",
6191
"url-join": "^5.0.0",
62-
"zod": "^3.22.2"
92+
"vaul": "^0.9.2",
93+
"zod": "^3.23.8"
6394
},
6495
"devDependencies": {
65-
"@commitlint/cli": "^17.4.4",
66-
"@commitlint/cz-commitlint": "^17.4.4",
67-
"@next/eslint-plugin-next": "^13.1.6",
68-
"@playwright/test": "^1.31.0",
69-
"@semantic-release/changelog": "^6.0.2",
96+
"@commitlint/cli": "^17.8.1",
97+
"@commitlint/cz-commitlint": "^17.8.1",
98+
"@next/eslint-plugin-next": "^13.5.6",
99+
"@playwright/test": "^1.47.0",
100+
"@semantic-release/changelog": "^6.0.3",
70101
"@semantic-release/git": "^10.0.1",
71-
"@testing-library/react": "^14.0.0",
72-
"@types/jsonwebtoken": "^9.0.1",
73-
"@types/nprogress": "^0.2.0",
74-
"@types/react": "^18.2.38",
75-
"@types/react-dom": "^18.2.17",
76-
"@typescript-eslint/eslint-plugin": "^6.12.0",
77-
"@typescript-eslint/parser": "^6.12.0",
102+
"@testing-library/react": "^14.3.1",
103+
"@types/jsonwebtoken": "^9.0.6",
104+
"@types/nprogress": "^0.2.3",
105+
"@types/react": "^18.3.5",
106+
"@types/react-dom": "^18.3.0",
107+
"@typescript-eslint/eslint-plugin": "^6.21.0",
108+
"@typescript-eslint/parser": "^6.21.0",
78109
"@vitejs/plugin-react": "^3.1.0",
79110
"commitizen": "^4.3.0",
80111
"concurrently": "^7.6.0",
81112
"env-cmd": "^10.1.0",
82-
"eslint": "^8.54.0",
113+
"eslint": "^8.57.0",
83114
"eslint-config-esnext": "^4.1.0",
84115
"eslint-config-node": "^4.1.0",
85-
"eslint-config-prettier": "^8.6.0",
86-
"eslint-plugin-import": "^2.27.5",
116+
"eslint-config-prettier": "^8.10.0",
117+
"eslint-plugin-import": "^2.30.0",
87118
"eslint-plugin-playwright": "^0.12.0",
88119
"eslint-plugin-prettier": "^4.2.1",
89120
"husky": "^8.0.3",
90-
"jsdom": "^21.1.0",
91-
"lint-staged": "^13.1.2",
92-
"npm-check-updates": "^16.7.5",
93-
"postcss": "^8.4.21",
94-
"prettier": "^2.8.4",
95-
"semantic-release": "^20.1.0",
96-
"supabase": "^1.38.6",
121+
"jsdom": "^21.1.2",
122+
"lint-staged": "^13.3.0",
123+
"npm-check-updates": "^16.14.20",
124+
"postcss": "^8.4.45",
125+
"prettier": "^2.8.8",
126+
"semantic-release": "^20.1.3",
127+
"supabase": "^1.191.3",
97128
"tailwindcss-cli": "^0.1.2",
98-
"tsc-files": "^1.1.3",
99-
"typescript": "^5.3.2",
129+
"tsc-files": "^1.1.4",
130+
"typescript": "^5.5.4",
100131
"vitest": "^0.28.5"
101132
},
102133
"config": {

0 commit comments

Comments
 (0)