|
|
| <!DOCTYPE html> |
| <html class="dark" lang="en"><head> |
| <meta charset="utf-8"/> |
| <meta content="width=device-width, initial-scale=1.0" name="viewport"/> |
| <title>VATANA - AI-Powered VAT Compliance Platform</title> |
| <script src="https://cdn.tailwindcss.com?plugins=forms,container-queries"></script> |
| <link href="https://fonts.googleapis.com" rel="preconnect"/> |
| <link crossorigin="" href="https://fonts.gstatic.com" rel="preconnect"/> |
| <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700;900&family=Roboto:wght@400;500&display=swap" rel="stylesheet"/> |
| <link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined" rel="stylesheet"/> |
| <style> |
| body { |
| font-family: 'Roboto', 'Source Sans Pro', sans-serif; |
| } |
| h1, h2, h3, h4, h5, h6 { |
| font-family: 'Inter', 'Outfit', sans-serif; |
| } |
| </style> |
| <script> |
| tailwind.config = { |
| darkMode: "class", |
| theme: { |
| extend: { |
| colors: { |
| "primary": "#5F9EA0", |
| "secondary": "#FFB347", |
| "background-light": "#F0F0F0", |
| "background-dark": "#05060A", |
| "text-light": "#E0E0E0", |
| "text-dark": "#1F1F1F" |
| }, |
| fontFamily: { |
| "display": ["Inter", "sans-serif"], |
| "body": ["Roboto", "sans-serif"] |
| }, |
| borderRadius: {"DEFAULT": "0.5rem", "lg": "0.75rem", "xl": "1rem", "full": "9999px"}, |
| boxShadow: { |
| 'glow-primary': '0 0 15px 0px rgba(95, 158, 160, 0.6)', |
| 'glow-secondary': '0 0 15px 0px rgba(255, 179, 71, 0.7)', |
| } |
| }, |
| }, |
| } |
| </script> |
| </head> |
| <body class="bg-background-dark font-body text-text-light"> |
| <div class="relative flex h-auto min-h-screen w-full flex-col overflow-x-hidden"> |
| <div class="layout-container flex h-full grow flex-col"> |
| <div class="flex flex-1 justify-center py-5"> |
| <div class="layout-content-container flex w-full flex-col max-w-6xl px-4 md:px-10"> |
| <main class="container mx-auto px-4 py-12"> |
| <div class="max-w-3xl mx-auto bg-white rounded-xl shadow-md overflow-hidden p-8"> |
| <div class="text-center mb-10"> |
| <h1 class="text-3xl font-bold text-gray-800 mb-2">Connect GitHub ↔️ Supabase</h1> |
| <p class="text-gray-600">Seamlessly integrate your GitHub repositories with Supabase for automated deployments</p> |
| </div> |
|
|
| <div class="grid md:grid-cols-2 gap-8"> |
| |
| <div class="bg-gray-50 p-6 rounded-lg border border-gray-200"> |
| <div class="flex items-center mb-4"> |
| <i data-feather="github" class="w-6 h-6 mr-2 text-gray-800"></i> |
| <h2 class="text-xl font-semibold text-gray-800">GitHub Setup</h2> |
| </div> |
| <p class="text-gray-600 mb-4">Connect your GitHub account to enable repository access.</p> |
| <button id="githubAuth" class="w-full bg-gray-800 hover:bg-gray-700 text-white py-2 px-4 rounded-lg flex items-center justify-center"> |
| <i data-feather="github" class="w-5 h-5 mr-2"></i> |
| Connect GitHub |
| </button> |
| <div id="githubStatus" class="mt-4 text-sm text-gray-500 hidden"> |
| <i data-feather="check-circle" class="w-4 h-4 inline mr-1 text-green-500"></i> |
| <span>Connected</span> |
| </div> |
| </div> |
|
|
| |
| <div class="bg-gray-50 p-6 rounded-lg border border-gray-200"> |
| <div class="flex items-center mb-4"> |
| <i data-feather="database" class="w-6 h-6 mr-2 text-gray-800"></i> |
| <h2 class="text-xl font-semibold text-gray-800">Supabase Setup</h2> |
| </div> |
| <div class="space-y-4"> |
| <div> |
| <label class="block text-sm font-medium text-gray-700 mb-1">Project URL</label> |
| <input type="text" id="supabaseUrl" placeholder="https://your-project-ref.supabase.co" class="w-full px-3 py-2 border border-gray-300 rounded-md"> |
| </div> |
| <div> |
| <label class="block text-sm font-medium text-gray-700 mb-1">API Key</label> |
| <input type="password" id="supabaseKey" placeholder="your-anon-key" class="w-full px-3 py-2 border border-gray-300 rounded-md"> |
| </div> |
| <button id="supabaseConnect" class="w-full bg-indigo-600 hover:bg-indigo-700 text-white py-2 px-4 rounded-lg"> |
| Connect Supabase |
| </button> |
| <div id="supabaseStatus" class="text-sm text-gray-500 hidden"> |
| <i data-feather="check-circle" class="w-4 h-4 inline mr-1 text-green-500"></i> |
| <span>Connected</span> |
| </div> |
| </div> |
| </div> |
| </div> |
|
|
| |
| <div id="configPanel" class="mt-10 hidden"> |
| <h2 class="text-xl font-semibold text-gray-800 mb-4">Configuration</h2> |
| <div class="bg-gray-50 p-6 rounded-lg border border-gray-200"> |
| <div class="grid md:grid-cols-2 gap-6"> |
| <div> |
| <label class="block text-sm font-medium text-gray-700 mb-1">Select Repository</label> |
| <select id="repoSelect" class="w-full px-3 py-2 border border-gray-300 rounded-md"> |
| <option value="">Loading repositories...</option> |
| </select> |
| </div> |
| <div> |
| <label class="block text-sm font-medium text-gray-700 mb-1">Select Branch</label> |
| <select id="branchSelect" class="w-full px-3 py-2 border border-gray-300 rounded-md" disabled> |
| <option value="">Select repository first</option> |
| </select> |
| </div> |
| </div> |
| <div class="mt-4"> |
| <label class="block text-sm font-medium text-gray-700 mb-1">Deployment Hook URL</label> |
| <input type="text" id="hookUrl" placeholder="https://api.supabase.com/v1/hooks/..." class="w-full px-3 py-2 border border-gray-300 rounded-md"> |
| </div> |
| |
| <div id="dropZone" class="mt-4 border-2 border-dashed border-gray-300 rounded-lg p-8 text-center bg-gray-50 hover:bg-gray-100 transition-colors"> |
| <div class="flex flex-col items-center justify-center"> |
| <i data-feather="upload" class="w-12 h-12 text-gray-400 mb-2"></i> |
| <p class="text-gray-600">Drag & drop files here or click to browse</p> |
| <input type="file" id="fileInput" class="hidden" multiple> |
| <p class="text-xs text-gray-500 mt-2">Supported: .js, .ts, .jsx, .tsx, .sql, .json</p> |
| </div> |
| </div> |
| <div id="fileList" class="mt-2 hidden"> |
| <h3 class="text-sm font-medium text-gray-700">Selected Files:</h3> |
| <ul id="fileItems" class="text-sm text-gray-600"></ul> |
| </div> |
| <button id="saveConfig" class="mt-6 bg-green-600 hover:bg-green-700 text-white py-2 px-6 rounded-lg"> |
| Save Configuration |
| </button> |
| </div> |
| </div> |
| </div> |
| </main> |
|
|
| <custom-footer></custom-footer> |
|
|
| <script src="components/navbar.js"></script> |
| <script src="components/footer.js"></script> |
| <script src="script.js"></script> |
| <script> |
| feather.replace(); |
| |
| |
| if (localStorage.getItem('githubToken')) { |
| document.getElementById('githubAuth').classList.add('hidden'); |
| document.getElementById('githubStatus').classList.remove('hidden'); |
| } |
| </script> |
| <script src="https://huggingface.co/deepsite/deepsite-badge.js"></script> |
| </body> |
| </html> |