Skip to content

Commit cc711eb

Browse files
committed
Install shadcn/vue
1 parent 427ecdf commit cc711eb

File tree

7 files changed

+223
-2
lines changed

7 files changed

+223
-2
lines changed
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,126 @@
11
@import "tailwindcss";
2+
@import "tw-animate-css";
3+
4+
@custom-variant dark (&:is(.dark *));
25

36
@plugin "@tailwindcss/typography";
47
@plugin "@tailwindcss/forms";
8+
9+
@theme inline {
10+
--color-background: var(--background);
11+
--color-foreground: var(--foreground);
12+
--color-card: var(--card);
13+
--color-card-foreground: var(--card-foreground);
14+
--color-popover: var(--popover);
15+
--color-popover-foreground: var(--popover-foreground);
16+
--color-primary: var(--primary);
17+
--color-primary-foreground: var(--primary-foreground);
18+
--color-secondary: var(--secondary);
19+
--color-secondary-foreground: var(--secondary-foreground);
20+
--color-muted: var(--muted);
21+
--color-muted-foreground: var(--muted-foreground);
22+
--color-accent: var(--accent);
23+
--color-accent-foreground: var(--accent-foreground);
24+
--color-destructive: var(--destructive);
25+
--color-destructive-foreground: var(--destructive-foreground);
26+
--color-border: var(--border);
27+
--color-input: var(--input);
28+
--color-ring: var(--ring);
29+
--color-chart-1: var(--chart-1);
30+
--color-chart-2: var(--chart-2);
31+
--color-chart-3: var(--chart-3);
32+
--color-chart-4: var(--chart-4);
33+
--color-chart-5: var(--chart-5);
34+
--radius-sm: calc(var(--radius) - 4px);
35+
--radius-md: calc(var(--radius) - 2px);
36+
--radius-lg: var(--radius);
37+
--radius-xl: calc(var(--radius) + 4px);
38+
--color-sidebar: var(--sidebar);
39+
--color-sidebar-foreground: var(--sidebar-foreground);
40+
--color-sidebar-primary: var(--sidebar-primary);
41+
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
42+
--color-sidebar-accent: var(--sidebar-accent);
43+
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
44+
--color-sidebar-border: var(--sidebar-border);
45+
--color-sidebar-ring: var(--sidebar-ring);
46+
}
47+
48+
:root {
49+
--background: oklch(1 0 0);
50+
--foreground: oklch(0.145 0 0);
51+
--card: oklch(1 0 0);
52+
--card-foreground: oklch(0.145 0 0);
53+
--popover: oklch(1 0 0);
54+
--popover-foreground: oklch(0.145 0 0);
55+
--primary: oklch(0.205 0 0);
56+
--primary-foreground: oklch(0.985 0 0);
57+
--secondary: oklch(0.97 0 0);
58+
--secondary-foreground: oklch(0.205 0 0);
59+
--muted: oklch(0.97 0 0);
60+
--muted-foreground: oklch(0.556 0 0);
61+
--accent: oklch(0.97 0 0);
62+
--accent-foreground: oklch(0.205 0 0);
63+
--destructive: oklch(0.577 0.245 27.325);
64+
--destructive-foreground: oklch(0.577 0.245 27.325);
65+
--border: oklch(0.922 0 0);
66+
--input: oklch(0.922 0 0);
67+
--ring: oklch(0.708 0 0);
68+
--chart-1: oklch(0.646 0.222 41.116);
69+
--chart-2: oklch(0.6 0.118 184.704);
70+
--chart-3: oklch(0.398 0.07 227.392);
71+
--chart-4: oklch(0.828 0.189 84.429);
72+
--chart-5: oklch(0.769 0.188 70.08);
73+
--radius: 0.625rem;
74+
--sidebar: oklch(0.985 0 0);
75+
--sidebar-foreground: oklch(0.145 0 0);
76+
--sidebar-primary: oklch(0.205 0 0);
77+
--sidebar-primary-foreground: oklch(0.985 0 0);
78+
--sidebar-accent: oklch(0.97 0 0);
79+
--sidebar-accent-foreground: oklch(0.205 0 0);
80+
--sidebar-border: oklch(0.922 0 0);
81+
--sidebar-ring: oklch(0.708 0 0);
82+
}
83+
84+
.dark {
85+
--background: oklch(0.145 0 0);
86+
--foreground: oklch(0.985 0 0);
87+
--card: oklch(0.145 0 0);
88+
--card-foreground: oklch(0.985 0 0);
89+
--popover: oklch(0.145 0 0);
90+
--popover-foreground: oklch(0.985 0 0);
91+
--primary: oklch(0.985 0 0);
92+
--primary-foreground: oklch(0.205 0 0);
93+
--secondary: oklch(0.269 0 0);
94+
--secondary-foreground: oklch(0.985 0 0);
95+
--muted: oklch(0.269 0 0);
96+
--muted-foreground: oklch(0.708 0 0);
97+
--accent: oklch(0.269 0 0);
98+
--accent-foreground: oklch(0.985 0 0);
99+
--destructive: oklch(0.396 0.141 25.723);
100+
--destructive-foreground: oklch(0.637 0.237 25.331);
101+
--border: oklch(0.269 0 0);
102+
--input: oklch(0.269 0 0);
103+
--ring: oklch(0.439 0 0);
104+
--chart-1: oklch(0.488 0.243 264.376);
105+
--chart-2: oklch(0.696 0.17 162.48);
106+
--chart-3: oklch(0.769 0.188 70.08);
107+
--chart-4: oklch(0.627 0.265 303.9);
108+
--chart-5: oklch(0.645 0.246 16.439);
109+
--sidebar: oklch(0.205 0 0);
110+
--sidebar-foreground: oklch(0.985 0 0);
111+
--sidebar-primary: oklch(0.488 0.243 264.376);
112+
--sidebar-primary-foreground: oklch(0.985 0 0);
113+
--sidebar-accent: oklch(0.269 0 0);
114+
--sidebar-accent-foreground: oklch(0.985 0 0);
115+
--sidebar-border: oklch(0.269 0 0);
116+
--sidebar-ring: oklch(0.439 0 0);
117+
}
118+
119+
@layer base {
120+
* {
121+
@apply border-border outline-ring/50;
122+
}
123+
body {
124+
@apply bg-background text-foreground;
125+
}
126+
}

app/frontend/lib/utils.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import { type ClassValue, clsx } from 'clsx'
2+
import { twMerge } from 'tailwind-merge'
3+
4+
export function cn(...inputs: ClassValue[]) {
5+
return twMerge(clsx(inputs))
6+
}

components.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"$schema": "https://shadcn-vue.com/schema.json",
3+
"style": "new-york",
4+
"typescript": true,
5+
"tailwind": {
6+
"config": "",
7+
"css": "app/frontend/entrypoints/application.css",
8+
"baseColor": "neutral",
9+
"cssVariables": true,
10+
"prefix": ""
11+
},
12+
"aliases": {
13+
"components": "@/components",
14+
"composables": "@/composables",
15+
"utils": "@/lib/utils",
16+
"ui": "@/components/ui",
17+
"lib": "@/lib"
18+
},
19+
"iconLibrary": "lucide"
20+
}

package-lock.json

Lines changed: 54 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,12 @@
2222
"@tailwindcss/typography": "^0.5.16",
2323
"@tailwindcss/vite": "^4.1.11",
2424
"@vitejs/plugin-vue": "^6.0.1",
25+
"class-variance-authority": "^0.7.1",
26+
"clsx": "^2.1.1",
27+
"lucide-vue-next": "^0.536.0",
28+
"tailwind-merge": "^3.3.1",
2529
"tailwindcss": "^4.1.11",
30+
"tw-animate-css": "^1.3.6",
2631
"typescript": "^5.8.3",
2732
"vue": "^3.5.18",
2833
"vue-tsc": "^3.0.4"

tsconfig.app.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,13 @@
1818
"strict": true,
1919
"noUnusedLocals": true,
2020
"noUnusedParameters": true,
21-
"noFallthroughCasesInSwitch": true
21+
"noFallthroughCasesInSwitch": true,
22+
23+
/* Aliases */
24+
"baseUrl": ".",
25+
"paths": {
26+
"@/*": ["./app/frontend/*"]
27+
}
2228
},
2329
"include": ["app/frontend/**/*.ts", "app/frontend/**/*.tsx", "app/frontend/**/*.vue"]
2430
}

tsconfig.json

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,13 @@
77
{
88
"path": "./tsconfig.node.json"
99
}
10-
]
10+
],
11+
12+
"compilerOptions": {
13+
/* Required for shadcn/ui */
14+
"baseUrl": "./app/frontend",
15+
"paths": {
16+
"@/*": ["./*"]
17+
}
18+
}
1119
}

0 commit comments

Comments
 (0)