ProjectGenesis commited on
Commit
2be25fd
·
verified ·
1 Parent(s): e003c70

Build a complete HTML file with TailwindCSS + custom CSS. The page should display five futuristic pill-shaped neon buttons on a dark gradient background. Design Requirements Background: dark-to-black gradient with subtle glowing grid overlay. Buttons: pill-shaped (true modern capsule silhouette), matte black interior, bold neon-colored text. Border: continuously rotating RGB trail with no pauses or snapping. Implement the border with a conic-gradient and a CSS custom property --a. Use @property to declare --a and animate it with @keyframes border-spin { from { --a:0turn } to { --a:1turn } }. Mask the gradient so only a clean, even stroke follows the capsule outline (no bleeding glow). Example core CSS that MUST be used: @property --a { syntax: '<angle>'; inherits: false; initial-value: 0turn; } @keyframes border-spin { from { --a: 0turn; } to { --a: 1turn; } } .neon-button::before { --a: 0turn; content:""; position:absolute; inset:0; border-radius:9999px; padding:3px; /* border thickness */ background: conic-gradient(from var(--a), rgba(255,0,0,.9), rgba(255,165,0,.9), rgba(255,255,0,.9), rgba(0,255,255,.9), rgba(128,0,128,.9), rgba(255,0,0,.9) ); animation: border-spin 3s linear infinite; -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; z-index: -1; } Hover effects: slight lift and soft glow. Active state: gentle press-down. Glow layer: add a subtle blurred drop-shadow behind each button matching its color theme. Variants: 5 buttons with different border palettes: cyan, purple, green, orange/red, and pink. Layout: center the buttons in a flex container; wrap responsively on smaller screens. Keep the entire project self-contained in one HTML file, no external CSS needed. - Initial Deployment

Browse files
Files changed (2) hide show
  1. README.md +7 -5
  2. index.html +328 -19
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Awesome Button Ui
3
- emoji: 🦀
4
- colorFrom: pink
5
- colorTo: yellow
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: awesome-button-ui
3
+ emoji: 🐳
4
+ colorFrom: green
5
+ colorTo: blue
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,328 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Neon Futuristic Pill Buttons</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <style>
9
+ /* Predefined custom properties for each button */
10
+ :root {
11
+ /* Glow intensities */
12
+ --glow-intensity: 12px;
13
+ /* Button colors */
14
+ --cyan: rgba(0, 255, 255, 0.9);
15
+ --purple: rgba(128, 0, 128, 0.9);
16
+ --green: rgba(50, 255, 150, 0.9);
17
+ --red: rgba(255, 69, 0, 0.9);
18
+ --orange: rgba(255, 165, 0, 0.9);
19
+ --pink: rgba(255, 20, 147, 0.9);
20
+ }
21
+
22
+ /* Required property declaration for animation */
23
+ @property --a {
24
+ syntax: "<angle>";
25
+ inherits: false;
26
+ initial-value: 0turn;
27
+ }
28
+
29
+ /* Required border spin animation */
30
+ @keyframes border-spin {
31
+ from { --a: 0turn; }
32
+ to { --a: 1turn; }
33
+ }
34
+
35
+ /* Glowing grid background */
36
+ .page-bg {
37
+ position: relative;
38
+ overflow: hidden;
39
+ background: linear-gradient(135deg, #0c0b15 0%, #111 50%, #080710 100%);
40
+ }
41
+
42
+ .page-bg::before {
43
+ content: '';
44
+ position: absolute;
45
+ top: 0;
46
+ left: 0;
47
+ width: 100%;
48
+ height: 100%;
49
+ background-image:
50
+ linear-gradient(rgba(21, 20, 38, 0.5) 1px, transparent 1px),
51
+ linear-gradient(90deg, rgba(21, 20, 38, 0.5) 1px, transparent 1px);
52
+ background-size: 50px 50px;
53
+ filter: blur(0.3px);
54
+ opacity: 0.25;
55
+ z-index: 1;
56
+ }
57
+
58
+ .glow-effects::after {
59
+ content: '';
60
+ position: absolute;
61
+ top: 0;
62
+ left: 0;
63
+ width: 150%;
64
+ height: 150%;
65
+ background: radial-gradient(ellipse at center,
66
+ rgba(7, 213, 231, 0.05) 0%,
67
+ rgba(183, 68, 184, 0.03) 40%,
68
+ rgba(0,0,0,0) 70%);
69
+ animation: rotate-glow 90s linear infinite;
70
+ transform: translate(-20%, -20%);
71
+ z-index: 2;
72
+ }
73
+
74
+ @keyframes rotate-glow {
75
+ from { transform: translate(-20%, -20%) rotate(0deg); }
76
+ to { transform: translate(-20%, -20%) rotate(360deg); }
77
+ }
78
+
79
+ /* Button container */
80
+ .button-container {
81
+ position: relative;
82
+ z-index: 10;
83
+ padding: 2rem;
84
+ opacity: 0.98;
85
+ }
86
+
87
+ /* Button Base Styling */
88
+ .neon-button {
89
+ position: relative;
90
+ display: flex;
91
+ align-items: center;
92
+ justify-content: center;
93
+ padding: 1.25rem 2.5rem;
94
+ border-radius: 9999px;
95
+ background: #080516; /* Deep matte black */
96
+ color: white;
97
+ font-size: 1.5rem;
98
+ font-weight: 800;
99
+ text-transform: uppercase;
100
+ letter-spacing: 2.5px;
101
+ transition: all 0.3s ease;
102
+ cursor: pointer;
103
+ margin: 1.5rem;
104
+ min-width: 220px;
105
+ box-shadow: 0 0 15px rgba(0, 231, 255, 0.1);
106
+ z-index: 3;
107
+ }
108
+
109
+ /* Required border animation styling from prompt */
110
+ .neon-button::before {
111
+ --a: 0turn;
112
+ content: "";
113
+ position: absolute;
114
+ inset: 0;
115
+ border-radius: 9999px;
116
+ padding: 3px; /* Border thickness */
117
+ background: conic-gradient(from var(--a),
118
+ rgba(255,0,0,.9),
119
+ rgba(255,165,0,.9),
120
+ rgba(255,255,0,.9),
121
+ rgba(0,255,255,.9),
122
+ rgba(128,0,128,.9),
123
+ rgba(255,0,0,.9));
124
+ animation: border-spin 3s linear infinite;
125
+ -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
126
+ -webkit-mask-composite: xor;
127
+ mask-composite: exclude;
128
+ z-index: -1;
129
+ }
130
+
131
+ /* Hover effects */
132
+ .neon-button:hover {
133
+ transform: translateY(-5px);
134
+ box-shadow: 0 15px 30px rgba(0, 195, 255, 0.2);
135
+ }
136
+
137
+ .neon-button:active {
138
+ transform: translateY(2px);
139
+ box-shadow: 0 0 10px rgba(0, 217, 255, 0.2);
140
+ }
141
+
142
+ /* Button-specific colors */
143
+ .cyan-button {
144
+ text-shadow: 0 0 10px rgba(0, 255, 255, 0.7);
145
+ box-shadow: 0 0 30px rgba(0, 217, 255, 0.25);
146
+ }
147
+ .cyan-button:hover {
148
+ box-shadow: 0 0 40px rgba(0, 195, 255, 0.5);
149
+ text-shadow: 0 0 15px var(--cyan);
150
+ }
151
+
152
+ .purple-button {
153
+ text-shadow: 0 0 10px rgba(128, 0, 128, 0.7);
154
+ box-shadow: 0 0 30px rgba(128, 0, 128, 0.25);
155
+ }
156
+ .purple-button:hover {
157
+ box-shadow: 0 0 40px rgba(128, 0, 128, 0.5);
158
+ text-shadow: 0 0 15px var(--purple);
159
+ }
160
+
161
+ .green-button {
162
+ text-shadow: 0 0 10px rgba(0, 255, 100, 0.7);
163
+ box-shadow: 0 0 30px rgba(0, 255, 100, 0.25);
164
+ }
165
+ .green-button:hover {
166
+ box-shadow: 0 0 40px rgba(0, 255, 100, 0.5);
167
+ text-shadow: 0 0 15px var(--green);
168
+ }
169
+
170
+ .orange-button {
171
+ text-shadow: 0 0 10px rgba(255, 165, 0, 0.7);
172
+ box-shadow: 0 0 30px rgba(255, 165, 0, 0.25);
173
+ }
174
+ .orange-button:hover {
175
+ box-shadow: 0 0 40px rgba(255, 165, 0, 0.5);
176
+ text-shadow: 0 0 15px var(--orange);
177
+ }
178
+
179
+ .pink-button {
180
+ text-shadow: 0 0 10px rgba(255, 20, 147, 0.7);
181
+ box-shadow: 0 0 30px rgba(255, 20, 147, 0.25);
182
+ }
183
+ .pink-button:hover {
184
+ box-shadow: 0 0 40px rgba(255, 20, 147, 0.5);
185
+ text-shadow: 0 0 15px var(--pink);
186
+ }
187
+
188
+ /* Title styling */
189
+ .futuristic-title {
190
+ position: relative;
191
+ font-size: 4rem;
192
+ font-weight: 800;
193
+ background: linear-gradient(to right,
194
+ #00eeff,
195
+ #ff00c3 30%,
196
+ #ff8c00 60%,
197
+ #d400ff 80%);
198
+ -webkit-background-clip: text;
199
+ background-clip: text;
200
+ color: transparent;
201
+ text-align: center;
202
+ letter-spacing: 0.08em;
203
+ text-shadow: 0 0 15px rgba(255,255,255,0.3);
204
+ margin-bottom: 2rem;
205
+ animation: title-shine 3s infinite alternate;
206
+ }
207
+
208
+ @keyframes title-shine {
209
+ from { filter: hue-rotate(0deg); }
210
+ to { filter: hue-rotate(45deg); }
211
+ }
212
+
213
+ @media (max-width: 640px) {
214
+ .futuristic-title {
215
+ font-size: 2.5rem;
216
+ }
217
+ .neon-button {
218
+ font-size: 1.2rem;
219
+ padding: 1rem 2rem;
220
+ min-width: 200px;
221
+ }
222
+ }
223
+ </style>
224
+ </head>
225
+ <body class="page-bg min-h-screen flex flex-col items-center justify-center overflow-hidden relative glow-effects">
226
+
227
+ <!-- Decorative floating particles -->
228
+ <div class="particles">
229
+ <!-- Generated using JS -->
230
+ </div>
231
+
232
+ <div class="flex flex-col items-center justify-center h-full pb-12 button-container">
233
+ <h1 class="futuristic-title pt-10 mb-8 px-4">
234
+ Neon Border Controls
235
+ </h1>
236
+
237
+ <div class="flex flex-wrap justify-center items-center">
238
+ <!-- Cyan Button -->
239
+ <button class="neon-button cyan-button">
240
+ <span class="drop-shadow-glow">CYAN CHANNEL</span>
241
+ </button>
242
+
243
+ <!-- Purple Button -->
244
+ <button class="neon-button purple-button">
245
+ <span class="drop-shadow-glow">PURPLE WAVE</span>
246
+ </button>
247
+
248
+ <!-- Green Button -->
249
+ <button class="neon-button green-button">
250
+ <span class="drop-shadow-glow">GREEN SCANNER</span>
251
+ </button>
252
+ </div>
253
+
254
+ <div class="flex flex-wrap justify-center items-center">
255
+ <!-- Orange Button -->
256
+ <button class="neon-button orange-button">
257
+ <span class="drop-shadow-glow">ORANGE SYSTEM</span>
258
+ </button>
259
+
260
+ <!-- Pink Button -->
261
+ <button class="neon-button pink-button">
262
+ <span class="drop-shadow-glow">PINK MATRIX</span>
263
+ </button>
264
+ </div>
265
+ </div>
266
+
267
+ <!-- Subtle footer with reflection -->
268
+ <div class="absolute bottom-0 w-full text-center p-4 text-blue-200/30 text-sm tracking-wider font-light">
269
+ SECURITY ACCESS PANEL | VER 2.3.9
270
+ </div>
271
+
272
+ <script>
273
+ // Create floating particles effect
274
+ document.addEventListener('DOMContentLoaded', () => {
275
+ const particlesContainer = document.querySelector('.particles');
276
+ const particleCount = 20;
277
+
278
+ for (let i = 0; i < particleCount; i++) {
279
+ const particle = document.createElement('div');
280
+ particle.classList.add('particle');
281
+ particle.style.position = 'absolute';
282
+ particle.style.borderRadius = '50%';
283
+ particle.style.width = `${Math.random() * 5 + 1}px`;
284
+ particle.style.height = particle.style.width;
285
+ particle.style.background = i % 3 === 0
286
+ ? 'rgba(0,200,255,0.8)'
287
+ : i % 3 === 1
288
+ ? 'rgba(200,0,255,0.5)'
289
+ : 'rgba(255,150,0,0.5)';
290
+ particle.style.left = `${Math.random() * 100}%`;
291
+ particle.style.top = `${Math.random() * 100}%`;
292
+ particle.style.boxShadow = `0 0 ${Math.random() * 15 + 5}px ${particle.style.background}`;
293
+
294
+ // Animation properties
295
+ particle.animate([
296
+ {
297
+ transform: 'translateY(0)',
298
+ opacity: 0.7
299
+ },
300
+ {
301
+ transform: `translateY(${Math.random() > 0.5 ? '-' : ''}${Math.random() * 20 + 10}px)`,
302
+ opacity: 0.2
303
+ }
304
+ ], {
305
+ duration: Math.random() * 5000 + 3000,
306
+ iterations: Infinity,
307
+ direction: 'alternate',
308
+ easing: 'ease-in-out'
309
+ });
310
+
311
+ particlesContainer.appendChild(particle);
312
+ }
313
+
314
+ // Button hover enhancement
315
+ document.querySelectorAll('.neon-button').forEach(button => {
316
+ button.addEventListener('mouseenter', () => {
317
+ button.classList.add('transform', 'transition');
318
+ });
319
+
320
+ button.addEventListener('mouseleave', () => {
321
+ button.classList.remove('transform', 'transition');
322
+ });
323
+ });
324
+ });
325
+ </script>
326
+
327
+ <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=ProjectGenesis/awesome-button-ui" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
328
+ </html>