Skip to content

Commit 52be163

Browse files
Copilothotlong
andcommitted
Replace all chaotic gradient colors with standard Shadcn semantic colors
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
1 parent f564f18 commit 52be163

File tree

3 files changed

+79
-79
lines changed

3 files changed

+79
-79
lines changed

apps/playground/src/pages/Home.tsx

Lines changed: 34 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -19,35 +19,35 @@ export const Home = () => {
1919
const [activeCategory, setActiveCategory] = useState<string>('Layouts');
2020

2121
return (
22-
<div className="min-h-screen bg-gradient-to-br from-slate-50 via-white to-indigo-50 text-gray-900">
22+
<div className="min-h-screen bg-background text-foreground">
2323
{/* Hero Section */}
2424
<header className="bg-white/80 backdrop-blur-md border-b border-gray-200/50 sticky top-0 z-20 shadow-sm">
2525
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 h-16 flex items-center justify-between">
2626
<div className="flex items-center gap-3">
27-
<div className="bg-gradient-to-br from-indigo-600 to-purple-600 p-2 rounded-xl shadow-lg shadow-indigo-200">
28-
<Box className="w-5 h-5 text-white" />
27+
<div className="bg-primary p-2 rounded-xl shadow-lg">
28+
<Box className="w-5 h-5 text-primary-foreground" />
2929
</div>
30-
<span className="font-bold text-xl tracking-tight bg-gradient-to-r from-gray-900 to-gray-600 bg-clip-text text-transparent">Object UI Studio</span>
30+
<span className="font-bold text-xl tracking-tight">Object UI Studio</span>
3131
</div>
3232
<div className="flex items-center gap-3">
3333
<button
3434
onClick={() => navigate('/studio/new')}
35-
className="flex items-center gap-2 px-4 py-2 text-sm font-semibold text-indigo-600 bg-indigo-50 hover:bg-indigo-100 border border-indigo-200 rounded-lg transition-all shadow-sm hover:shadow"
35+
className="flex items-center gap-2 px-4 py-2 text-sm font-semibold bg-primary text-primary-foreground hover:bg-primary/90 rounded-lg transition-all shadow-sm hover:shadow"
3636
>
3737
<Plus className="w-4 h-4" />
3838
New Design
3939
</button>
4040
<button
4141
onClick={() => navigate('/my-designs')}
42-
className="flex items-center gap-2 px-4 py-2 text-sm font-semibold text-gray-700 hover:text-gray-900 bg-white/50 hover:bg-white border border-gray-200 rounded-lg transition-all shadow-sm hover:shadow"
42+
className="flex items-center gap-2 px-4 py-2 text-sm font-semibold bg-secondary text-secondary-foreground hover:bg-secondary/80 border border-border rounded-lg transition-all shadow-sm hover:shadow"
4343
>
4444
<FolderOpen className="w-4 h-4" />
4545
My Designs
4646
</button>
4747
<a
4848
href="https://github.com/objectql/objectui"
4949
target="_blank"
50-
className="flex items-center gap-2 px-4 py-2 text-sm font-medium text-gray-700 hover:text-gray-900 bg-white/50 hover:bg-white border border-gray-200 rounded-lg transition-all shadow-sm hover:shadow"
50+
className="flex items-center gap-2 px-4 py-2 text-sm font-medium bg-secondary text-secondary-foreground hover:bg-secondary/80 border border-border rounded-lg transition-all shadow-sm hover:shadow"
5151
>
5252
<svg className="w-4 h-4" fill="currentColor" viewBox="0 0 24 24">
5353
<path fillRule="evenodd" d="M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z" clipRule="evenodd" />
@@ -62,39 +62,39 @@ export const Home = () => {
6262
<div className="text-center mb-20 relative">
6363
{/* Decorative elements */}
6464
<div className="absolute inset-0 -z-10 overflow-hidden">
65-
<div className="absolute top-0 left-1/4 w-96 h-96 bg-gradient-to-br from-indigo-200 to-purple-200 rounded-full blur-3xl opacity-30 animate-pulse"></div>
66-
<div className="absolute top-20 right-1/4 w-80 h-80 bg-gradient-to-br from-blue-200 to-cyan-200 rounded-full blur-3xl opacity-30 animate-pulse"></div>
65+
<div className="absolute top-0 left-1/4 w-96 h-96 bg-muted/20 rounded-full blur-3xl opacity-30 animate-pulse"></div>
66+
<div className="absolute top-20 right-1/4 w-80 h-80 bg-muted/30 rounded-full blur-3xl opacity-30 animate-pulse"></div>
6767
</div>
6868

69-
<div className="inline-flex items-center gap-2 px-4 py-2 bg-indigo-50 border border-indigo-200 rounded-full text-sm font-semibold text-indigo-700 mb-6 shadow-sm">
69+
<div className="inline-flex items-center gap-2 px-4 py-2 bg-muted border border-border rounded-full text-sm font-semibold text-muted-foreground mb-6 shadow-sm">
7070
<span className="relative flex h-2 w-2">
71-
<span className="animate-ping absolute inline-flex h-full w-full rounded-full bg-indigo-400 opacity-75"></span>
72-
<span className="relative inline-flex rounded-full h-2 w-2 bg-indigo-500"></span>
71+
<span className="animate-ping absolute inline-flex h-full w-full rounded-full bg-primary opacity-75"></span>
72+
<span className="relative inline-flex rounded-full h-2 w-2 bg-primary"></span>
7373
</span>
7474
Interactive Visual Editor
7575
</div>
7676

77-
<h1 className="text-5xl md:text-6xl lg:text-7xl font-black tracking-tight text-gray-900 mb-6 leading-tight">
77+
<h1 className="text-5xl md:text-6xl lg:text-7xl font-black tracking-tight mb-6 leading-tight">
7878
Build Stunning Interfaces,<br />
79-
<span className="bg-gradient-to-r from-indigo-600 via-purple-600 to-pink-600 bg-clip-text text-transparent">Purely from JSON.</span>
79+
<span className="text-primary">Purely from JSON.</span>
8080
</h1>
81-
<p className="max-w-2xl mx-auto text-xl text-gray-600 leading-relaxed mb-8">
81+
<p className="max-w-2xl mx-auto text-xl text-muted-foreground leading-relaxed mb-8">
8282
Object UI transforms JSON schemas into fully functional, accessible, and responsive React applications.
8383
<br className="hidden sm:block" />
84-
<span className="font-semibold text-gray-700">Select a template below or start from scratch.</span>
84+
<span className="font-semibold">Select a template below or start from scratch.</span>
8585
</p>
8686

8787
<div className="flex justify-center gap-4">
8888
<button
8989
onClick={() => navigate('/studio/new')}
90-
className="flex items-center gap-2 px-6 py-3 text-lg font-bold text-white bg-gradient-to-r from-indigo-600 to-purple-600 hover:from-indigo-700 hover:to-purple-700 rounded-xl shadow-lg shadow-indigo-300/50 transition-all transform hover:scale-105"
90+
className="flex items-center gap-2 px-6 py-3 text-lg font-bold bg-primary text-primary-foreground hover:bg-primary/90 rounded-xl shadow-lg transition-all transform hover:scale-105"
9191
>
9292
<Plus className="w-5 h-5" />
9393
Start New Design
9494
</button>
9595
<button
9696
onClick={() => navigate('/my-designs')}
97-
className="flex items-center gap-2 px-6 py-3 text-lg font-bold text-gray-700 bg-white hover:bg-gray-50 border-2 border-gray-200 rounded-xl shadow-lg transition-all transform hover:scale-105"
97+
className="flex items-center gap-2 px-6 py-3 text-lg font-bold bg-secondary text-secondary-foreground hover:bg-secondary/80 border-2 border-border rounded-xl shadow-lg transition-all transform hover:scale-105"
9898
>
9999
<FolderOpen className="w-5 h-5" />
100100
Open Saved
@@ -111,14 +111,14 @@ export const Home = () => {
111111
className={`
112112
group flex items-center gap-2 px-5 py-2.5 rounded-xl text-sm font-semibold transition-all duration-200
113113
${activeCategory === category
114-
? 'bg-gradient-to-r from-indigo-600 to-purple-600 text-white shadow-lg shadow-indigo-300/50 scale-105'
115-
: 'bg-white text-gray-700 hover:bg-gray-50 border-2 border-gray-200 hover:border-indigo-200 hover:shadow-md'}
114+
? 'bg-primary text-primary-foreground shadow-lg scale-105'
115+
: 'bg-secondary text-secondary-foreground hover:bg-secondary/80 border-2 border-border hover:shadow-md'}
116116
`}
117117
>
118118
<CategoryIcon name={category} />
119119
{category}
120120
{activeCategory === category && (
121-
<span className="ml-1 px-2 py-0.5 bg-white/20 rounded-full text-xs font-bold">
121+
<span className="ml-1 px-2 py-0.5 bg-primary-foreground/20 rounded-full text-xs font-bold">
122122
{exampleCategories[category as keyof typeof exampleCategories].length}
123123
</span>
124124
)}
@@ -136,42 +136,42 @@ export const Home = () => {
136136
<div
137137
key={key}
138138
onClick={() => navigate(`/${key}`)}
139-
className="group relative bg-white rounded-2xl border-2 border-gray-200 overflow-hidden hover:shadow-2xl hover:shadow-indigo-500/20 transition-all duration-300 cursor-pointer hover:border-indigo-400 hover:-translate-y-1 flex flex-col h-72"
139+
className="group relative bg-card rounded-2xl border-2 border-border overflow-hidden hover:shadow-2xl transition-all duration-300 cursor-pointer hover:border-primary hover:-translate-y-1 flex flex-col h-72"
140140
>
141-
{/* Gradient overlay on hover */}
142-
<div className="absolute inset-0 bg-gradient-to-br from-indigo-500/0 via-purple-500/0 to-pink-500/0 group-hover:from-indigo-500/5 group-hover:via-purple-500/5 group-hover:to-pink-500/5 transition-all duration-500 pointer-events-none z-10"></div>
141+
{/* Overlay on hover */}
142+
<div className="absolute inset-0 bg-primary/0 group-hover:bg-primary/5 transition-all duration-500 pointer-events-none z-10"></div>
143143

144144
{/* Mock Preview Window */}
145-
<div className="bg-gradient-to-br from-gray-50 to-slate-100 border-b border-gray-200 p-6 flex-1 flex items-center justify-center overflow-hidden relative">
145+
<div className="bg-muted border-b border-border p-6 flex-1 flex items-center justify-center overflow-hidden relative">
146146
{/* Decorative grid */}
147147
<div className="absolute inset-0 opacity-20 bg-dot-pattern-sm"></div>
148148

149-
<div className="relative w-3/4 h-3/4 bg-white shadow-xl border-2 border-gray-300 rounded-xl flex flex-col group-hover:scale-110 transition-transform duration-500">
150-
<div className="h-5 border-b-2 border-gray-200 bg-gradient-to-b from-gray-100 to-gray-50 flex items-center px-2 gap-1.5 rounded-t-xl">
149+
<div className="relative w-3/4 h-3/4 bg-card shadow-xl border-2 border-border rounded-xl flex flex-col group-hover:scale-110 transition-transform duration-500">
150+
<div className="h-5 border-b-2 border-border bg-muted flex items-center px-2 gap-1.5 rounded-t-xl">
151151
<div className="w-2 h-2 rounded-full bg-red-500 shadow-sm"></div>
152152
<div className="w-2 h-2 rounded-full bg-yellow-500 shadow-sm"></div>
153153
<div className="w-2 h-2 rounded-full bg-green-500 shadow-sm"></div>
154154
</div>
155155
<div className="flex-1 p-3">
156156
<div className="space-y-2.5">
157-
<div className="h-2.5 bg-gradient-to-r from-indigo-200 to-purple-200 rounded-full w-1/2 animate-pulse"></div>
158-
<div className="h-2.5 bg-gradient-to-r from-blue-200 to-cyan-200 rounded-full w-3/4 animate-pulse [animation-delay:75ms]"></div>
159-
<div className="h-2.5 bg-gradient-to-r from-purple-200 to-pink-200 rounded-full w-full animate-pulse [animation-delay:150ms]"></div>
157+
<div className="h-2.5 bg-muted rounded-full w-1/2 animate-pulse"></div>
158+
<div className="h-2.5 bg-muted rounded-full w-3/4 animate-pulse [animation-delay:75ms]"></div>
159+
<div className="h-2.5 bg-muted rounded-full w-full animate-pulse [animation-delay:150ms]"></div>
160160
</div>
161161
</div>
162162
</div>
163163
</div>
164164

165-
<div className="p-6 relative z-10 bg-white border-t border-gray-100">
166-
<h3 className="text-lg font-bold text-gray-900 group-hover:text-indigo-600 transition-colors mb-2">
165+
<div className="p-6 relative z-10 bg-card border-t border-border">
166+
<h3 className="text-lg font-bold group-hover:text-primary transition-colors mb-2">
167167
{title}
168168
</h3>
169169
<div className="flex items-center justify-between">
170-
<div className="flex items-center text-sm font-semibold text-gray-500 group-hover:text-indigo-600 transition-colors">
170+
<div className="flex items-center text-sm font-semibold text-muted-foreground group-hover:text-primary transition-colors">
171171
Launch Studio
172172
<ArrowRight className="w-4 h-4 ml-2 transform group-hover:translate-x-2 transition-transform" />
173173
</div>
174-
<div className="px-3 py-1 bg-indigo-50 text-indigo-700 rounded-full text-xs font-bold group-hover:bg-indigo-600 group-hover:text-white transition-colors">
174+
<div className="px-3 py-1 bg-muted text-muted-foreground rounded-full text-xs font-bold group-hover:bg-primary group-hover:text-primary-foreground transition-colors">
175175
Try Now
176176
</div>
177177
</div>

0 commit comments

Comments
 (0)