udd542 commited on
Commit
3b472ff
·
verified ·
1 Parent(s): 6f436ad

Upload folder using huggingface_hub

Browse files
Files changed (1) hide show
  1. index.html +107 -60
index.html CHANGED
@@ -3,25 +3,27 @@
3
 
4
  <head>
5
  <meta charset="UTF-8">
6
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
- <title>AI Prompt Architect | White Hat Edition</title>
8
  <!-- Importing FontAwesome for Icons -->
9
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
10
  <!-- Google Fonts for a clean look -->
11
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap" rel="stylesheet">
 
12
 
13
  <style>
14
  :root {
15
- --primary-color: #2563eb; /* Royal Blue */
 
16
  --glow-color: rgba(37, 99, 235, 0.4);
17
  --accent-color: #0ea5e9;
18
  --bg-color: #f8fafc;
19
- --card-bg: rgba(255, 255, 255, 0.85);
20
  --text-color: #1e293b;
21
  --text-secondary: #64748b;
22
  --border-radius: 16px;
23
  --font-main: 'Inter', sans-serif;
24
- --font-mono: 'Fira Code', 'Courier New', monospace;
25
  --shadow-soft: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
26
  --shadow-glow: 0 0 20px rgba(255, 255, 255, 0.8), 0 0 15px var(--glow-color);
27
  }
@@ -30,13 +32,14 @@
30
  box-sizing: border-box;
31
  margin: 0;
32
  padding: 0;
 
33
  }
34
 
35
  body {
36
  font-family: var(--font-main);
37
  background-color: var(--bg-color);
38
- /* Subtle white/glowing mesh gradient background */
39
- background-image:
40
  radial-gradient(at 0% 0%, rgba(255, 255, 255, 1) 0px, transparent 50%),
41
  radial-gradient(at 100% 100%, rgba(200, 220, 255, 0.5) 0px, transparent 50%);
42
  background-attachment: fixed;
@@ -49,10 +52,10 @@
49
 
50
  /* --- Header --- */
51
  header {
52
- background: rgba(255, 255, 255, 0.7);
53
  backdrop-filter: blur(12px);
54
  -webkit-backdrop-filter: blur(12px);
55
- padding: 1rem 2rem;
56
  display: flex;
57
  justify-content: space-between;
58
  align-items: center;
@@ -61,15 +64,17 @@
61
  top: 0;
62
  z-index: 100;
63
  box-shadow: var(--shadow-soft);
 
 
64
  }
65
 
66
  .brand {
67
- font-size: 1.4rem;
68
  font-weight: 700;
69
  color: var(--text-color);
70
  display: flex;
71
  align-items: center;
72
- gap: 12px;
73
  letter-spacing: -0.5px;
74
  }
75
 
@@ -79,15 +84,16 @@
79
  }
80
 
81
  .built-with {
82
- font-size: 0.85rem;
83
  color: var(--text-secondary);
84
  text-decoration: none;
85
  transition: all 0.3s ease;
86
- padding: 6px 14px;
87
  border-radius: 20px;
88
  background: rgba(255, 255, 255, 0.6);
89
  border: 1px solid rgba(255, 255, 255, 0.8);
90
- font-weight: 500;
 
91
  }
92
 
93
  .built-with:hover {
@@ -102,22 +108,18 @@
102
  flex: 1;
103
  display: flex;
104
  justify-content: center;
105
- align-items: center;
106
- padding: 2rem;
107
  }
108
 
109
  .container {
110
  width: 100%;
111
- max-width: 1100px;
112
  display: grid;
113
- grid-template-columns: 1fr 1fr;
114
- gap: 2.5rem;
115
- }
116
-
117
- @media (max-width: 900px) {
118
- .container {
119
- grid-template-columns: 1fr;
120
- }
121
  }
122
 
123
  /* --- Panels (Glassmorphism) --- */
@@ -125,14 +127,15 @@
125
  background: var(--card-bg);
126
  border: 1px solid rgba(255, 255, 255, 0.6);
127
  border-radius: var(--border-radius);
128
- padding: 2.5rem;
129
  box-shadow: var(--shadow-glow);
130
  display: flex;
131
  flex-direction: column;
132
- gap: 1.5rem;
133
  transition: transform 0.3s ease, box-shadow 0.3s ease;
134
  position: relative;
135
  overflow: hidden;
 
136
  }
137
 
138
  /* Decorative glow line at top of panel */
@@ -153,9 +156,9 @@
153
  }
154
 
155
  h2 {
156
- font-size: 1.1rem;
157
  color: var(--text-color);
158
- margin-bottom: 0.5rem;
159
  text-transform: uppercase;
160
  letter-spacing: 1px;
161
  font-weight: 700;
@@ -163,20 +166,20 @@
163
  align-items: center;
164
  gap: 10px;
165
  }
166
-
167
  h2 i {
168
- color: var(--primary-color);
169
  }
170
 
171
  /* --- Form Elements --- */
172
  .form-group {
173
  display: flex;
174
  flex-direction: column;
175
- gap: 0.6rem;
176
  }
177
 
178
  label {
179
- font-size: 0.85rem;
180
  color: var(--text-secondary);
181
  font-weight: 600;
182
  text-transform: uppercase;
@@ -186,16 +189,17 @@
186
  select,
187
  textarea,
188
  input {
189
- background: rgba(255, 255, 255, 0.8);
190
  border: 1px solid #e2e8f0;
191
  border-radius: 8px;
192
  color: var(--text-color);
193
- padding: 14px;
194
  font-family: var(--font-main);
195
- font-size: 0.95rem;
196
  outline: none;
197
  transition: all 0.3s ease;
198
- box-shadow: inset 0 2px 4px rgba(0,0,0,0.02);
 
199
  }
200
 
201
  select:focus,
@@ -208,8 +212,8 @@
208
 
209
  textarea {
210
  resize: vertical;
211
- min-height: 140px;
212
- line-height: 1.6;
213
  }
214
 
215
  /* --- Button (White Glow Effect) --- */
@@ -218,7 +222,7 @@
218
  color: var(--primary-color);
219
  font-weight: 700;
220
  border: 1px solid white;
221
- padding: 16px;
222
  border-radius: 8px;
223
  cursor: pointer;
224
  text-transform: uppercase;
@@ -228,9 +232,10 @@
228
  justify-content: center;
229
  align-items: center;
230
  gap: 10px;
231
- font-size: 1rem;
232
  margin-top: auto;
233
  box-shadow: 0 4px 15px rgba(37, 99, 235, 0.15);
 
234
  }
235
 
236
  .btn-generate:hover {
@@ -248,21 +253,24 @@
248
  flex: 1;
249
  display: flex;
250
  flex-direction: column;
 
251
  }
252
 
253
  .output-wrapper {
254
  background: #fff;
255
  border: 1px solid #e2e8f0;
256
  border-radius: 8px;
257
- padding: 1.5rem;
258
  flex: 1;
259
  overflow-y: auto;
260
  font-family: var(--font-mono);
 
261
  color: #334155;
262
  white-space: pre-wrap;
263
  position: relative;
264
- min-height: 350px;
265
- box-shadow: inset 0 2px 4px rgba(0,0,0,0.02);
 
266
  }
267
 
268
  .output-placeholder {
@@ -273,17 +281,18 @@
273
  color: #94a3b8;
274
  text-align: center;
275
  pointer-events: none;
 
276
  }
277
 
278
  .actions {
279
  display: flex;
280
- gap: 12px;
281
  margin-top: 12px;
282
  }
283
 
284
  .btn-action {
285
  flex: 1;
286
- padding: 12px;
287
  border-radius: 8px;
288
  border: 1px solid #e2e8f0;
289
  background: white;
@@ -293,15 +302,15 @@
293
  display: flex;
294
  justify-content: center;
295
  align-items: center;
296
- gap: 8px;
297
  font-weight: 500;
298
- font-size: 0.9rem;
299
  }
300
 
301
  .btn-action:hover {
302
  border-color: var(--primary-color);
303
  color: var(--primary-color);
304
- box-shadow: 0 2px 8px rgba(0,0,0,0.05);
305
  }
306
 
307
  .btn-clear:hover {
@@ -312,7 +321,7 @@
312
  /* --- Toast Notification --- */
313
  .toast {
314
  position: fixed;
315
- bottom: 30px;
316
  left: 50%;
317
  transform: translateX(-50%) translateY(100px);
318
  background: white;
@@ -320,6 +329,7 @@
320
  padding: 12px 24px;
321
  border-radius: 50px;
322
  font-weight: 600;
 
323
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 0 15px rgba(37, 99, 235, 0.3);
324
  opacity: 0;
325
  transition: all 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
@@ -328,6 +338,7 @@
328
  align-items: center;
329
  gap: 10px;
330
  border: 1px solid rgba(37, 99, 235, 0.1);
 
331
  }
332
 
333
  .toast.show {
@@ -337,9 +348,17 @@
337
 
338
  /* --- Animations --- */
339
  @keyframes pulse-glow {
340
- 0% { text-shadow: 0 0 5px rgba(37, 99, 235, 0.2); }
341
- 50% { text-shadow: 0 0 15px rgba(37, 99, 235, 0.6); }
342
- 100% { text-shadow: 0 0 5px rgba(37, 99, 235, 0.2); }
 
 
 
 
 
 
 
 
343
  }
344
 
345
  .brand i {
@@ -348,7 +367,8 @@
348
 
349
  /* Scrollbar Styling */
350
  ::-webkit-scrollbar {
351
- width: 8px;
 
352
  }
353
 
354
  ::-webkit-scrollbar-track {
@@ -357,12 +377,39 @@
357
 
358
  ::-webkit-scrollbar-thumb {
359
  background: #cbd5e1;
360
- border-radius: 4px;
361
  }
362
 
363
  ::-webkit-scrollbar-thumb:hover {
364
  background: var(--primary-color);
365
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
366
  </style>
367
  </head>
368
 
@@ -392,9 +439,9 @@
392
  <label for="aiSelect">Select AI Model</label>
393
  <select id="aiSelect">
394
  <option value="gpt4">ChatGPT (GPT-4)</option>
395
- <option value="gpt3">ChatGPT (GPT-3.5)</option>
396
- <option value="claude">Anthropic Claude</option>
397
  <option value="deepseek">DeepSeek (V3)</option>
 
398
  <option value="llama">Meta Llama</option>
399
  <option value="mistral">Mistral AI</option>
400
  </select>
@@ -457,7 +504,6 @@
457
 
458
  <script>
459
  // --- Data: Strategy Templates (White Hat/Ethical) ---
460
- // These templates focus on enhancing performance through structure.
461
  const strategies = {
462
  standard: {
463
  name: "Standard Professional",
@@ -521,7 +567,7 @@
521
  // Typewriter effect setup
522
  outputArea.innerHTML = '';
523
  let i = 0;
524
- const speed = 10; // ms per character (slightly slower for readability)
525
 
526
  function typeWriter() {
527
  if (i < finalText.length) {
@@ -535,7 +581,7 @@
535
  typeWriter();
536
 
537
  showToast("Prompt Constructed Successfully!");
538
- }, 800);
539
  }
540
 
541
  // 2. Copy to Clipboard
@@ -608,4 +654,5 @@
608
 
609
  </script>
610
  </body>
 
611
  </html>
 
3
 
4
  <head>
5
  <meta charset="UTF-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
7
+ <title>AI Prompt Architect | Ultimate Edition</title>
8
  <!-- Importing FontAwesome for Icons -->
9
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
10
  <!-- Google Fonts for a clean look -->
11
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap" rel="stylesheet">
12
+ <link href="https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500&display=swap" rel="stylesheet">
13
 
14
  <style>
15
  :root {
16
+ --primary-color: #2563eb;
17
+ /* Royal Blue */
18
  --glow-color: rgba(37, 99, 235, 0.4);
19
  --accent-color: #0ea5e9;
20
  --bg-color: #f8fafc;
21
+ --card-bg: rgba(255, 255, 255, 0.9);
22
  --text-color: #1e293b;
23
  --text-secondary: #64748b;
24
  --border-radius: 16px;
25
  --font-main: 'Inter', sans-serif;
26
+ --font-mono: 'Fira Code', monospace;
27
  --shadow-soft: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
28
  --shadow-glow: 0 0 20px rgba(255, 255, 255, 0.8), 0 0 15px var(--glow-color);
29
  }
 
32
  box-sizing: border-box;
33
  margin: 0;
34
  padding: 0;
35
+ -webkit-tap-highlight-color: transparent;
36
  }
37
 
38
  body {
39
  font-family: var(--font-main);
40
  background-color: var(--bg-color);
41
+ /* Responsive Mesh Gradient Background */
42
+ background-image:
43
  radial-gradient(at 0% 0%, rgba(255, 255, 255, 1) 0px, transparent 50%),
44
  radial-gradient(at 100% 100%, rgba(200, 220, 255, 0.5) 0px, transparent 50%);
45
  background-attachment: fixed;
 
52
 
53
  /* --- Header --- */
54
  header {
55
+ background: rgba(255, 255, 255, 0.85);
56
  backdrop-filter: blur(12px);
57
  -webkit-backdrop-filter: blur(12px);
58
+ padding: 1rem 1.5rem;
59
  display: flex;
60
  justify-content: space-between;
61
  align-items: center;
 
64
  top: 0;
65
  z-index: 100;
66
  box-shadow: var(--shadow-soft);
67
+ flex-wrap: wrap; /* Allows wrapping on very small screens */
68
+ gap: 10px;
69
  }
70
 
71
  .brand {
72
+ font-size: 1.25rem;
73
  font-weight: 700;
74
  color: var(--text-color);
75
  display: flex;
76
  align-items: center;
77
+ gap: 10px;
78
  letter-spacing: -0.5px;
79
  }
80
 
 
84
  }
85
 
86
  .built-with {
87
+ font-size: 0.75rem;
88
  color: var(--text-secondary);
89
  text-decoration: none;
90
  transition: all 0.3s ease;
91
+ padding: 6px 12px;
92
  border-radius: 20px;
93
  background: rgba(255, 255, 255, 0.6);
94
  border: 1px solid rgba(255, 255, 255, 0.8);
95
+ font-weight: 600;
96
+ white-space: nowrap;
97
  }
98
 
99
  .built-with:hover {
 
108
  flex: 1;
109
  display: flex;
110
  justify-content: center;
111
+ padding: 1.5rem;
112
+ width: 100%;
113
  }
114
 
115
  .container {
116
  width: 100%;
117
+ max-width: 1200px;
118
  display: grid;
119
+ /* Responsive Grid: 2 columns on desktop, 1 on mobile */
120
+ grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
121
+ gap: 2rem;
122
+ align-items: start; /* Prevents panels from stretching to same height if content differs */
 
 
 
 
123
  }
124
 
125
  /* --- Panels (Glassmorphism) --- */
 
127
  background: var(--card-bg);
128
  border: 1px solid rgba(255, 255, 255, 0.6);
129
  border-radius: var(--border-radius);
130
+ padding: 2rem;
131
  box-shadow: var(--shadow-glow);
132
  display: flex;
133
  flex-direction: column;
134
+ gap: 1.25rem;
135
  transition: transform 0.3s ease, box-shadow 0.3s ease;
136
  position: relative;
137
  overflow: hidden;
138
+ width: 100%;
139
  }
140
 
141
  /* Decorative glow line at top of panel */
 
156
  }
157
 
158
  h2 {
159
+ font-size: 1rem;
160
  color: var(--text-color);
161
+ margin-bottom: 0.25rem;
162
  text-transform: uppercase;
163
  letter-spacing: 1px;
164
  font-weight: 700;
 
166
  align-items: center;
167
  gap: 10px;
168
  }
169
+
170
  h2 i {
171
+ color: var(--primary-color);
172
  }
173
 
174
  /* --- Form Elements --- */
175
  .form-group {
176
  display: flex;
177
  flex-direction: column;
178
+ gap: 0.5rem;
179
  }
180
 
181
  label {
182
+ font-size: 0.75rem;
183
  color: var(--text-secondary);
184
  font-weight: 600;
185
  text-transform: uppercase;
 
189
  select,
190
  textarea,
191
  input {
192
+ background: rgba(255, 255, 255, 0.9);
193
  border: 1px solid #e2e8f0;
194
  border-radius: 8px;
195
  color: var(--text-color);
196
+ padding: 12px;
197
  font-family: var(--font-main);
198
+ font-size: 0.9rem;
199
  outline: none;
200
  transition: all 0.3s ease;
201
+ box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.02);
202
+ width: 100%; /* Ensures full width in flex/grid */
203
  }
204
 
205
  select:focus,
 
212
 
213
  textarea {
214
  resize: vertical;
215
+ min-height: 120px;
216
+ line-height: 1.5;
217
  }
218
 
219
  /* --- Button (White Glow Effect) --- */
 
222
  color: var(--primary-color);
223
  font-weight: 700;
224
  border: 1px solid white;
225
+ padding: 14px;
226
  border-radius: 8px;
227
  cursor: pointer;
228
  text-transform: uppercase;
 
232
  justify-content: center;
233
  align-items: center;
234
  gap: 10px;
235
+ font-size: 0.9rem;
236
  margin-top: auto;
237
  box-shadow: 0 4px 15px rgba(37, 99, 235, 0.15);
238
+ width: 100%;
239
  }
240
 
241
  .btn-generate:hover {
 
253
  flex: 1;
254
  display: flex;
255
  flex-direction: column;
256
+ min-height: 300px; /* Ensure height on mobile */
257
  }
258
 
259
  .output-wrapper {
260
  background: #fff;
261
  border: 1px solid #e2e8f0;
262
  border-radius: 8px;
263
+ padding: 1.25rem;
264
  flex: 1;
265
  overflow-y: auto;
266
  font-family: var(--font-mono);
267
+ font-size: 0.85rem;
268
  color: #334155;
269
  white-space: pre-wrap;
270
  position: relative;
271
+ min-height: 250px;
272
+ box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.02);
273
+ width: 100%;
274
  }
275
 
276
  .output-placeholder {
 
281
  color: #94a3b8;
282
  text-align: center;
283
  pointer-events: none;
284
+ width: 80%;
285
  }
286
 
287
  .actions {
288
  display: flex;
289
+ gap: 10px;
290
  margin-top: 12px;
291
  }
292
 
293
  .btn-action {
294
  flex: 1;
295
+ padding: 10px;
296
  border-radius: 8px;
297
  border: 1px solid #e2e8f0;
298
  background: white;
 
302
  display: flex;
303
  justify-content: center;
304
  align-items: center;
305
+ gap: 6px;
306
  font-weight: 500;
307
+ font-size: 0.85rem;
308
  }
309
 
310
  .btn-action:hover {
311
  border-color: var(--primary-color);
312
  color: var(--primary-color);
313
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
314
  }
315
 
316
  .btn-clear:hover {
 
321
  /* --- Toast Notification --- */
322
  .toast {
323
  position: fixed;
324
+ bottom: 20px;
325
  left: 50%;
326
  transform: translateX(-50%) translateY(100px);
327
  background: white;
 
329
  padding: 12px 24px;
330
  border-radius: 50px;
331
  font-weight: 600;
332
+ font-size: 0.9rem;
333
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 0 15px rgba(37, 99, 235, 0.3);
334
  opacity: 0;
335
  transition: all 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
 
338
  align-items: center;
339
  gap: 10px;
340
  border: 1px solid rgba(37, 99, 235, 0.1);
341
+ white-space: nowrap;
342
  }
343
 
344
  .toast.show {
 
348
 
349
  /* --- Animations --- */
350
  @keyframes pulse-glow {
351
+ 0% {
352
+ text-shadow: 0 0 5px rgba(37, 99, 235, 0.2);
353
+ }
354
+
355
+ 50% {
356
+ text-shadow: 0 0 15px rgba(37, 99, 235, 0.6);
357
+ }
358
+
359
+ 100% {
360
+ text-shadow: 0 0 5px rgba(37, 99, 235, 0.2);
361
+ }
362
  }
363
 
364
  .brand i {
 
367
 
368
  /* Scrollbar Styling */
369
  ::-webkit-scrollbar {
370
+ width: 6px;
371
+ height: 6px;
372
  }
373
 
374
  ::-webkit-scrollbar-track {
 
377
 
378
  ::-webkit-scrollbar-thumb {
379
  background: #cbd5e1;
380
+ border-radius: 3px;
381
  }
382
 
383
  ::-webkit-scrollbar-thumb:hover {
384
  background: var(--primary-color);
385
  }
386
+
387
+ /* --- Mobile Specific Adjustments --- */
388
+ @media (max-width: 600px) {
389
+ main {
390
+ padding: 1rem;
391
+ }
392
+
393
+ .container {
394
+ gap: 1.5rem;
395
+ }
396
+
397
+ .panel {
398
+ padding: 1.5rem;
399
+ }
400
+
401
+ h2 {
402
+ font-size: 0.9rem;
403
+ }
404
+
405
+ .brand span {
406
+ font-size: 1.1rem;
407
+ }
408
+
409
+ .output-wrapper {
410
+ font-size: 0.8rem;
411
+ }
412
+ }
413
  </style>
414
  </head>
415
 
 
439
  <label for="aiSelect">Select AI Model</label>
440
  <select id="aiSelect">
441
  <option value="gpt4">ChatGPT (GPT-4)</option>
442
+ <option value="gemini">Google Gemini (Pro/Ultra)</option>
 
443
  <option value="deepseek">DeepSeek (V3)</option>
444
+ <option value="claude">Anthropic Claude</option>
445
  <option value="llama">Meta Llama</option>
446
  <option value="mistral">Mistral AI</option>
447
  </select>
 
504
 
505
  <script>
506
  // --- Data: Strategy Templates (White Hat/Ethical) ---
 
507
  const strategies = {
508
  standard: {
509
  name: "Standard Professional",
 
567
  // Typewriter effect setup
568
  outputArea.innerHTML = '';
569
  let i = 0;
570
+ const speed = 5; // Faster typing for better UX
571
 
572
  function typeWriter() {
573
  if (i < finalText.length) {
 
581
  typeWriter();
582
 
583
  showToast("Prompt Constructed Successfully!");
584
+ }, 600);
585
  }
586
 
587
  // 2. Copy to Clipboard
 
654
 
655
  </script>
656
  </body>
657
+
658
  </html>