| | <!DOCTYPE html> |
| | <html lang="en"> |
| | <head> |
| | <meta charset="UTF-8"> |
| | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | <title>ChatGPT Clone</title> |
| | <link rel="icon" type="image/x-icon" href="/static/favicon.ico"> |
| | <link rel="stylesheet" href="style.css"> |
| | <script src="https://cdn.tailwindcss.com"></script> |
| | <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script> |
| | <script src="https://unpkg.com/feather-icons"></script> |
| | <script src="https://cdn.jsdelivr.net/npm/vanta@latest/dist/vanta.globe.min.js"></script> |
| | </head> |
| | <body class="bg-gray-900 text-white min-h-screen flex flex-col"> |
| | <custom-navbar></custom-navbar> |
| | |
| | <div id="vanta-bg" class="absolute inset-0 z-0"></div> |
| | |
| | <div class="container mx-auto px-4 py-8 relative z-10 flex-grow flex flex-col"> |
| | <div class="flex-grow flex flex-col"> |
| | <div class="text-center mb-8"> |
| | <h1 class="text-4xl font-bold mb-2">AI Assistant</h1> |
| | <p class="text-gray-400">Powered by OpenAI GPT</p> |
| | </div> |
| | |
| | <div id="chat-container" class="bg-gray-800 rounded-xl p-6 mb-6 flex-grow flex flex-col"> |
| | <div id="messages" class="flex-grow overflow-y-auto mb-4 space-y-4 max-h-[60vh]"> |
| | <div class="message assistant-message bg-gray-700 rounded-lg p-4"> |
| | <div class="font-bold text-blue-400 mb-1">Assistant</div> |
| | <div>Hello! I'm your AI assistant. How can I help you today?</div> |
| | </div> |
| | </div> |
| | |
| | <div class="flex space-x-2"> |
| | <input |
| | type="text" |
| | id="message-input" |
| | placeholder="Type your message here..." |
| | class="flex-grow bg-gray-700 text-white rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-blue-500" |
| | > |
| | <button id="send-button" class="bg-blue-600 hover:bg-blue-700 text-white rounded-lg px-6 py-2 transition duration-200 flex items-center"> |
| | <i data-feather="send" class="mr-2"></i> Send |
| | </button> |
| | </div> |
| | </div> |
| | </div> |
| | |
| | <div class="bg-gray-800 rounded-xl p-6"> |
| | <h2 class="text-xl font-bold mb-4">API Configuration</h2> |
| | <div class="flex flex-col space-y-4"> |
| | <div> |
| | <label class="block text-gray-300 mb-2">OpenAI API Key</label> |
| | <input |
| | type="password" |
| | id="api-key-input" |
| | placeholder="Enter your OpenAI API key" |
| | class="w-full bg-gray-700 text-white rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-blue-500" |
| | > |
| | </div> |
| | <button id="save-api-key" class="bg-green-600 hover:bg-green-700 text-white rounded-lg px-4 py-2 transition duration-200"> |
| | Save API Key |
| | </button> |
| | </div> |
| | </div> |
| | </div> |
| | |
| | <custom-footer></custom-footer> |
| | |
| | <script src="components/navbar.js"></script> |
| | <script src="components/footer.js"></script> |
| | <script src="script.js"></script> |
| | <script> |
| | feather.replace(); |
| | VANTA.GLOBE({ |
| | el: "#vanta-bg", |
| | mouseControls: true, |
| | touchControls: true, |
| | gyroControls: false, |
| | minHeight: 200.00, |
| | minWidth: 200.00, |
| | scale: 1.00, |
| | scaleMobile: 1.00, |
| | color: 0x3b82f6, |
| | color2: 0x8b5cf6, |
| | backgroundColor: 0x111827 |
| | }); |
| | </script> |
| | <script src=></script> |
| | </body> |
| | </html> |