ParthSadaria commited on
Commit
02650d6
·
verified ·
1 Parent(s): c613f2b

Upload index.html

Browse files
Files changed (1) hide show
  1. index.html +546 -0
index.html ADDED
@@ -0,0 +1,546 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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>API Documentation | Loki.AI</title>
7
+ <link href="https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@400;600&display=swap" rel="stylesheet">
8
+ <link href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/themes/prism-tomorrow.min.css" rel="stylesheet" />
9
+ <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/prism.min.js"></script>
10
+ <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/components/prism-json.min.js"></script>
11
+ <style>
12
+ :root {
13
+ --bg-primary: #000000;
14
+ --bg-secondary: #1c1c1e;
15
+ --text-primary: #ffffff;
16
+ --text-secondary: #86868b;
17
+ --accent: #0071e3;
18
+ --border: #333336;
19
+ --card-bg: #1c1c1e;
20
+ }
21
+
22
+ * {
23
+ margin: 0;
24
+ padding: 0;
25
+ box-sizing: border-box;
26
+ cursor: none;
27
+ }
28
+
29
+ body {
30
+ background-color: var(--bg-primary);
31
+ color: var(--text-primary);
32
+ font-family: 'Space Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;
33
+ line-height: 1.5;
34
+ }
35
+ /* Customize scrollbar for WebKit browsers (Chrome, Safari, Edge) */
36
+ body::-webkit-scrollbar {
37
+ width: 12px; /* Set the width of the scrollbar */
38
+ }
39
+
40
+ body::-webkit-scrollbar-thumb {
41
+ background-color: #1a1a1a; /* Scrollbar color */
42
+ border-radius: 10px; /* Round edges */
43
+ transition: background-color 200ms ease; /* Smooth transition for background color */
44
+ }
45
+
46
+ body::-webkit-scrollbar-track {
47
+ background: none; /* Track color */
48
+ border-radius: 10px; /* Match rounding */
49
+ }
50
+
51
+ body::-webkit-scrollbar-thumb:hover {
52
+ width: 20px;
53
+ background-color: #2a2a2a; /* Change color on hover */
54
+ }
55
+
56
+
57
+ .container {
58
+ max-width: 800px;
59
+ margin: 0 auto;
60
+ padding: 2rem;
61
+ }
62
+
63
+ /* Header styles */
64
+ header {
65
+ padding: 8rem 0;
66
+ text-align: center;
67
+ background: var(--bg-secondary);
68
+ border-radius: 12px;
69
+ margin-bottom: 4rem;
70
+ border: 1px solid var(--border);
71
+ position: relative;
72
+ overflow: hidden;
73
+ }
74
+
75
+ /* Before pseudo-element for hover effect */
76
+ header::before {
77
+ content: '';
78
+ position: absolute;
79
+ top: 0;
80
+ left: 0;
81
+ right: 0;
82
+ bottom: 0;
83
+ background: radial-gradient(circle at var(--x, 50%) var(--y, 50%),
84
+ rgba(59, 130, 246, 0.1) 0%,
85
+ transparent 50%);
86
+ pointer-events: none;
87
+ opacity: 0;
88
+ transition: opacity 0.3s ease;
89
+ }
90
+
91
+ header:hover::before {
92
+ opacity: 1;
93
+ }
94
+
95
+ /* Scroll Down indicator styles */
96
+ .scroll-indicator {
97
+ position: absolute;
98
+ bottom: 20px; /* Place it just below the header padding */
99
+ left: 50%;
100
+ transform: translateX(-50%);
101
+ opacity: 0;
102
+ font-size: 12px;
103
+ color: #8f8f8f;
104
+ transition: opacity 0.3s ease, transform 0.3s ease;
105
+ }
106
+
107
+ /* Arrow styling */
108
+ .arrow {
109
+ font-size: 12px;
110
+ transition: transform 0.3s ease;
111
+ }
112
+
113
+ /* On hover, make the text appear and move up */
114
+ header:hover .scroll-indicator {
115
+ opacity: 1;
116
+ transform: translate(-50%, -10px); /* Move it up slightly */
117
+ }
118
+
119
+ header:hover .scroll-indicator .arrow {
120
+ transform: translateY(10px); /* Bounce the arrow a little */
121
+ }
122
+
123
+
124
+ h1 {
125
+ font-size: 5.5rem;
126
+ font-weight: 700;
127
+ letter-spacing: -0.03em;
128
+ margin-bottom: 1rem;
129
+ background: linear-gradient(135deg, #fff 0%, #888 100%);
130
+ -webkit-background-clip: text;
131
+ background-clip: text;
132
+ -webkit-text-fill-color: transparent;
133
+ }
134
+
135
+ header p {
136
+ color: var(--text-secondary);
137
+ font-size: 1.2rem;
138
+ }
139
+
140
+ .section {
141
+ background: var(--card-bg);
142
+ border-radius: 20px;
143
+ padding: 2rem;
144
+ margin-bottom: 2rem;
145
+ border: 1px solid var(--border);
146
+ }
147
+
148
+ h2 {
149
+ font-size: 1.8rem;
150
+ margin-bottom: 1.5rem;
151
+ color: var(--text-primary);
152
+ }
153
+
154
+ h3 {
155
+ font-size: 1.2rem;
156
+ margin: 1.5rem 0 0.75rem;
157
+ color: var(--text-primary);
158
+ }
159
+
160
+ .endpoint {
161
+ background: var(--bg-primary);
162
+ padding: 1rem;
163
+ border-radius: 12px;
164
+ font-family: 'JetBrains Mono', monospace;
165
+ margin: 0.5rem 0;
166
+ border: 1px solid var(--border);
167
+ }
168
+
169
+ .btn {
170
+ display: inline-block;
171
+ background: var(--accent);
172
+ color: white;
173
+ padding: 0.8rem 1.5rem;
174
+ border-radius: 24px;
175
+ text-decoration: none;
176
+ font-weight: 500;
177
+ transition: all 0.2s ease;
178
+ border: none;
179
+ cursor: pointer;
180
+ margin: 0.5rem 0;
181
+ }
182
+
183
+ .btn:hover {
184
+ background: #0077ED;
185
+ transform: translateY(-1px);
186
+ }
187
+
188
+ .models-list {
189
+ display: grid;
190
+ grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
191
+ gap: 1rem;
192
+ margin-top: 1rem;
193
+ }
194
+
195
+ .model-item {
196
+ background: var(--bg-primary);
197
+ padding: 1rem;
198
+ border-radius: 12px;
199
+ text-align: center;
200
+ border: 1px solid var(--border);
201
+ transition: all 0.2s ease;
202
+ }
203
+
204
+ .model-item:hover {
205
+ border-color: var(--accent);
206
+ transform: translateY(-2px);
207
+ }
208
+ .model-item.glow {
209
+ font-weight: 700;
210
+ position: relative;
211
+ border: 2px solid transparent; /* Initial border with no color */
212
+ background-clip: padding-box; /* Ensure background doesn’t interfere with border */
213
+ animation: slideBorder 3s ease-in-out infinite; /* Smooth transition with ease-in-out */
214
+ border-radius: 5px; /* Optional: rounded corners */
215
+ }
216
+
217
+ @keyframes slideBorder {
218
+ 0% {
219
+ border-color: rgba(255, 215, 0, 0.2); /* Soft gold */
220
+ }
221
+ 50% {
222
+ border-color: rgba(255, 215, 0, 0.8); /* Brighter gold */
223
+ }
224
+ 100% {
225
+ border-color: rgba(255, 215, 0, 0.2); /* Soft gold */
226
+ }
227
+ }
228
+
229
+
230
+ pre {
231
+ border-radius: 12px;
232
+ margin: 1rem 0;
233
+ background: var(--bg-primary) !important;
234
+ border: 1px solid var(--border);
235
+ }
236
+
237
+ code {
238
+ font-family: 'JetBrains Mono', monospace;
239
+ }
240
+
241
+ .contact-section {
242
+ text-align: center;
243
+ padding: 3rem 2rem;
244
+ background: var(--card-bg);
245
+ border-radius: 20px;
246
+ border: 1px solid var(--border);
247
+ }
248
+
249
+ footer {
250
+ text-align: center;
251
+ padding: 2rem;
252
+ color: var(--text-secondary);
253
+ }
254
+
255
+ @media (max-width: 768px) {
256
+ .container {
257
+ padding: 1rem;
258
+ }
259
+
260
+ h1 {
261
+ font-size: 2.5rem;
262
+ }
263
+
264
+ .section {
265
+ padding: 1.5rem;
266
+ }
267
+ }
268
+ .cursor {
269
+ width: 20px;
270
+ height: 20px;
271
+ border: 2px solid var(--accent);
272
+ border-radius: 50%;
273
+ position: fixed;
274
+ pointer-events: none;
275
+ z-index: 999;
276
+ transition: all 0.1s ease;
277
+ transition-property: width, height, border;
278
+ }
279
+
280
+ .cursor-dot {
281
+ width: 4px;
282
+ height: 4px;
283
+ background: var(--accent);
284
+ border-radius: 50%;
285
+ position: fixed;
286
+ pointer-events: none;
287
+ z-index: 999;
288
+ }
289
+
290
+ .cursor-trail {
291
+ width: 10px;
292
+ height: 10px;
293
+ background: rgba(59, 130, 246, 0.2);
294
+ border-radius: 50%;
295
+ position: fixed;
296
+ pointer-events: none;
297
+ z-index: 998;
298
+ transition: 0.1s;
299
+ }
300
+ </style>
301
+ </head>
302
+ <body>
303
+ <div class="cursor"></div>
304
+ <div class="cursor-dot"></div>
305
+ <div class="cursor-trail"></div>
306
+ <div class="container">
307
+ <header>
308
+
309
+ <h1>Loki.AI API</h1>
310
+ <p>Powerful AI Integration at Your Fingertips</p>
311
+ <p style="margin-top: 10px;">Made With ❤️ by
312
+ <a href="https://github.com/ParthSadaria" style="text-decoration: none; color: inherit; font-weight: bold; transition: 500ms ease;"
313
+ onmouseover="this.style.textShadow='0 0 15px #FFFFFF';"
314
+ onmouseout="this.style.textShadow='none';">
315
+ Parth Sadaria
316
+ </a>
317
+ </p>
318
+ <div class="scroll-indicator">
319
+ <span>Scroll Down For More Info<br><span class="arrow">v</span></span>
320
+ </div>
321
+ </header>
322
+
323
+ <section class="section">
324
+ <h2>Quick Start Guide</h2>
325
+
326
+ <h3>Base URL</h3>
327
+ <div class="endpoint">https://parthsadaria-lokiai.hf.space/chat/completions</div>
328
+
329
+ <h3>Models Endpoint</h3>
330
+ <div class="endpoint">https://parthsadaria-lokiai.hf.space/models</div>
331
+
332
+ <h3>Authentication</h3>
333
+ <a href="https://dsc.gg/chadgang" target="_blank" class="btn">
334
+ Join Discord for Free API Key
335
+ </a>
336
+ </section>
337
+
338
+ <section class="section">
339
+ <h2>Request Format</h2>
340
+ <pre><code class="language-json">{
341
+ "model": "llama-3.1-405b",
342
+ "messages": [
343
+ {
344
+ "role": "user",
345
+ "content": "Hello, AI!"
346
+ },
347
+ "stream": true
348
+ ]
349
+ }</code></pre>
350
+ </section>
351
+
352
+ <section class="section">
353
+ <h2>Available Models</h2>
354
+ <p>More info at <span style="text-decoration: underline; cursor: pointer;" onclick="window.location.href='https://parthsadaria-lokiai.hf.space/models'">https://parthsadaria-lokiai.hf.space/models</span></p>
355
+ <div class="models-list">
356
+ <div class="model-item glow">o1-preview</div>
357
+ <div class="model-item glow">o1-mini</div>
358
+ <div class="model-item glow">gpt-4o</div>
359
+ <div class="model-item glow">gpt-4o-mini</div>
360
+ <div class="model-item glow">llama-3.1-405b</div>
361
+ <div class="model-item glow">llama-3.1-7b</div>
362
+ <div class="model-item glow">llama-3.1-80b</div>
363
+ <div class="model-item glow">gemini-1.0-pro-001</div>
364
+ <div class="model-item glow">gemini-1.5-pro</div>
365
+ <div class="model-item glow">gemini-pro</div>
366
+ <div class="model-item glow">gemini-pro-vision</div>
367
+
368
+ <!-- Add the rest of the models below -->
369
+ <div class="model-item">gpt-3.5-turbo</div>
370
+ <div class="model-item">gpt-3.5-turbo-0125</div>
371
+ <div class="model-item">gpt-3.5-turbo-0301</div>
372
+ <div class="model-item">gpt-3.5-turbo-0613</div>
373
+ <div class="model-item">gpt-3.5-turbo-1106</div>
374
+ <div class="model-item">gpt-3.5-turbo-16k</div>
375
+ <div class="model-item">gpt-3.5-turbo-16k-0613</div>
376
+ <div class="model-item">gpt-3.5-turbo-instruct</div>
377
+ <div class="model-item">gpt-35-turbo</div>
378
+ <div class="model-item">gpt-35-turbo-16k</div>
379
+ <div class="model-item">gpt-4</div>
380
+ <div class="model-item">gpt-4-0125-preview</div>
381
+ <div class="model-item">gpt-4-0314</div>
382
+ <div class="model-item">gpt-4-0613</div>
383
+ <div class="model-item">gpt-4-1106-preview</div>
384
+ <div class="model-item">gpt-4-32k</div>
385
+ <div class="model-item">gpt-4-32k-0314</div>
386
+ <div class="model-item">gpt-4-32k-0613</div>
387
+ <div class="model-item">gpt-4-turbo</div>
388
+ <div class="model-item">gpt-4-turbo-2024-04-09</div>
389
+ <div class="model-item">gpt-4-turbo-preview</div>
390
+ <div class="model-item">gpt-4-vision-preview</div>
391
+ <div class="model-item">gpt-4o-2024-05-13</div>
392
+ <div class="model-item">gpt-4o-all</div>
393
+ <div class="model-item">gpt-4o-mini-2024-07-18</div>
394
+ <div class="model-item">hunyuan-lite</div>
395
+ <div class="model-item">hunyuan-pro</div>
396
+ <div class="model-item">hunyuan-standard</div>
397
+ <div class="model-item">hunyuan-standard-256K</div>
398
+ <div class="model-item">mistral-medium</div>
399
+ <div class="model-item">mixtral-8x7b</div>
400
+ <div class="model-item">net-gpt-4-all</div>
401
+ <div class="model-item">o1-mini-2024-09-12</div>
402
+ <div class="model-item">o1-mini-all</div>
403
+ <div class="model-item">o1-preview-2024-09-12</div>
404
+ <div class="model-item">o1-preview-all</div>
405
+ <div class="model-item">qwen-72b</div>
406
+ <div class="model-item">qwen-long</div>
407
+ <div class="model-item">qwen-max</div>
408
+ <div class="model-item">qwen-max-longcontext</div>
409
+ <div class="model-item">qwen-plus</div>
410
+ <div class="model-item">qwen-turbo</div>
411
+ <div class="model-item">360GPT_S2_V9</div>
412
+ <div class="model-item">abab5.5s-chat</div>
413
+ <div class="model-item">abab6-chat</div>
414
+ <div class="model-item">Baichuan2-Turbo</div>
415
+ <div class="model-item">chatglm_lite</div>
416
+ <div class="model-item">chatglm_pro</div>
417
+ <div class="model-item">chatglm_std</div>
418
+ <div class="model-item">chatglm_turbo</div>
419
+ <div class="model-item">code-llama-13b</div>
420
+ <div class="model-item">code-llama-34b</div>
421
+ <div class="model-item">code-llama-7b</div>
422
+ </div>
423
+ </section>
424
+
425
+ <section class="contact-section">
426
+ <h2>Get Started Now</h2>
427
+ <p style="color: var(--text-secondary); margin-bottom: 1.5rem;">Ready to integrate Loki.AI into your application?</p>
428
+ <a href="https://dsc.gg/chadgang" target="_blank" class="btn">
429
+ Join Our Discord Community
430
+ </a>
431
+ </section>
432
+
433
+ <footer>
434
+ <p>Built with ❤️ by Parth Sadaria</p>
435
+ </footer>
436
+ </div>
437
+
438
+ <script>
439
+ document.addEventListener('DOMContentLoaded', function() {
440
+ const cursor = document.querySelector('.cursor');
441
+ const cursorDot = document.querySelector('.cursor-dot');
442
+ const cursorTrail = document.querySelector('.cursor-trail');
443
+
444
+ let mouseX = 0;
445
+ let mouseY = 0;
446
+ let cursorX = 0;
447
+ let cursorY = 0;
448
+ let trailX = 0;
449
+ let trailY = 0;
450
+
451
+ // Function to update sizes dynamically
452
+ function getSizes() {
453
+ return {
454
+ cursorSize: parseInt(getComputedStyle(cursor).width),
455
+ dotSize: parseInt(getComputedStyle(cursorDot).width),
456
+ trailSize: parseInt(getComputedStyle(cursorTrail).width)
457
+ };
458
+ }
459
+
460
+ document.addEventListener('mousemove', (e) => {
461
+ mouseX = e.clientX;
462
+ mouseY = e.clientY;
463
+
464
+ // Update header gradient
465
+ const header = document.querySelector('header');
466
+ if (header) {
467
+ const rect = header.getBoundingClientRect();
468
+ const x = ((e.clientX - rect.left) / rect.width) * 100;
469
+ const y = ((e.clientY - rect.top) / rect.height) * 100;
470
+ header.style.setProperty('--x', `${x}%`);
471
+ header.style.setProperty('--y', `${y}%`);
472
+ }
473
+
474
+ // Update glow effects
475
+ document.querySelectorAll('[data-glow]').forEach(element => {
476
+ const rect = element.getBoundingClientRect();
477
+ const x = ((e.clientX - rect.left) / rect.width) * 100;
478
+ const y = ((e.clientY - rect.top) / rect.height) * 100;
479
+ element.style.setProperty('--x', `${x}%`);
480
+ element.style.setProperty('--y', `${y}%`);
481
+ });
482
+ });
483
+
484
+ // Smooth cursor animation
485
+ function animate() {
486
+ const { cursorSize, dotSize, trailSize } = getSizes(); // Get sizes each frame
487
+
488
+ // Calculate movement for cursor and trail
489
+ const dxCursor = mouseX - cursorX;
490
+ const dyCursor = mouseY - cursorY;
491
+
492
+ cursorX += dxCursor * 0.15; // Faster follow
493
+ cursorY += dyCursor * 0.15;
494
+
495
+ // Trail follows cursor with a slight delay
496
+ const dxTrail = cursorX - trailX;
497
+ const dyTrail = cursorY - trailY;
498
+
499
+ trailX += dxTrail * 0.1;
500
+ trailY += dyTrail * 0.1;
501
+
502
+ // Apply transformations based on dynamic sizes
503
+ cursor.style.transform = `translate(${cursorX - cursorSize / 2}px, ${cursorY - cursorSize / 2}px)`;
504
+ cursorDot.style.transform = `translate(${mouseX - dotSize / 2}px, ${mouseY - dotSize / 2}px)`;
505
+ cursorTrail.style.transform = `translate(${trailX - trailSize / 2}px, ${trailY - trailSize / 2}px)`;
506
+
507
+ requestAnimationFrame(animate);
508
+ }
509
+ animate();
510
+
511
+ // Cursor interactions with smooth transitions
512
+ document.querySelectorAll('a, button, .section').forEach(element => {
513
+ element.addEventListener('mouseenter', () => {
514
+ cursor.style.transition = 'width 0.2s ease, height 0.2s ease';
515
+ cursor.style.width = '30px';
516
+ cursor.style.height = '30px';
517
+ cursor.style.backgroundColor = 'rgba(59, 130, 246, 1)';
518
+ });
519
+
520
+ element.addEventListener('mouseleave', () => {
521
+ cursor.style.transition = 'width 0.2s ease, height 0.2s ease';
522
+ cursor.style.width = '20px';
523
+ cursor.style.height = '20px';
524
+ cursor.style.backgroundColor = 'transparent';
525
+ });
526
+ });
527
+
528
+ // Prevent cursor from disappearing
529
+ document.addEventListener('mouseout', () => {
530
+ cursor.style.opacity = '0';
531
+ cursorDot.style.opacity = '0';
532
+ cursorTrail.style.opacity = '0';
533
+ });
534
+
535
+ document.addEventListener('mouseover', () => {
536
+ cursor.style.opacity = '1';
537
+ cursorDot.style.opacity = '1';
538
+ cursorTrail.style.opacity = '1';
539
+ });
540
+
541
+ // Initialize Prism
542
+ Prism.highlightAll();
543
+ });
544
+ </script>
545
+ </body>
546
+ </html>