|
|
<!DOCTYPE html> |
|
|
<html lang="en" data-theme="light"> |
|
|
|
|
|
<head> |
|
|
<meta charset="UTF-8"> |
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
|
<title>NexusGraph AI - Enterprise RAG</title> |
|
|
|
|
|
|
|
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet"> |
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="/frontend/style.css"> |
|
|
</head> |
|
|
|
|
|
<body> |
|
|
|
|
|
<div class="app-container"> |
|
|
|
|
|
|
|
|
<aside class="sidebar"> |
|
|
<div class="brand">NexusGraph AI</div> |
|
|
|
|
|
<button class="new-chat-btn" onclick="newChat()"> |
|
|
<span>+</span> New Chat |
|
|
</button> |
|
|
|
|
|
<div class="history-list" id="historyList"> |
|
|
|
|
|
</div> |
|
|
|
|
|
<div class="sidebar-footer"> |
|
|
<a href="/frontend/analytics.html" style="font-size: 0.9rem; color: var(--text-muted);">📊 Analytics |
|
|
Dashboard</a> |
|
|
<button onclick="clearHistory()" |
|
|
style="background:none; border:none; color:var(--text-muted); cursor:pointer; font-size:0.8rem;">Clear |
|
|
All</button> |
|
|
</div> |
|
|
</aside> |
|
|
|
|
|
|
|
|
<main class="main-content" id="mainContent"> |
|
|
|
|
|
|
|
|
<div class="top-bar"> |
|
|
<button class="theme-toggle" id="themeToggleBtn" onclick="toggleTheme()" title="Toggle Dark Mode"> |
|
|
|
|
|
</button> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="chat-container" id="chatContainer"> |
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="input-area glass input-card"> |
|
|
|
|
|
<div class="file-row"> |
|
|
<label class="file-upload-label" for="files"> |
|
|
<svg width="20" height="20" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"> |
|
|
<path |
|
|
d="M21.44 11.05l-9.19 9.19a6 1.83 6 1.83 0 0 1-2.59-2.59l8.6-8.6a4 1.83 4 1.83 0 0 1 2.59 2.59l-8.6 8.6a2 1.83 2 1.83 0 0 1-2.59-2.59l9.19-9.19"> |
|
|
</path> |
|
|
</svg> |
|
|
Upload Documents (PDF/TXT) |
|
|
</label> |
|
|
<div id="uploadStatus" style="font-size: 0.8rem; margin-left: auto;"></div> |
|
|
</div> |
|
|
|
|
|
<input type="file" id="files" multiple onchange="upload()"> |
|
|
|
|
|
<div class="progress-container"> |
|
|
<div class="progress-bar"></div> |
|
|
</div> |
|
|
|
|
|
<div class="textarea-wrapper"> |
|
|
<textarea id="question" placeholder="Ask a question or type 'Summarize'..." |
|
|
onkeydown="handleKey(event)"></textarea> |
|
|
<button class="send-btn" onclick="ask()"> |
|
|
<svg width="18" height="18" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"> |
|
|
<line x1="22" y1="2" x2="11" y2="13"></line> |
|
|
<polygon points="22 2 15 22 11 13 2 9 22 2"></polygon> |
|
|
</svg> |
|
|
</button> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
</main> |
|
|
</div> |
|
|
|
|
|
|
|
|
<script src="/frontend/script.js"></script> |
|
|
</body> |
|
|
|
|
|
</html> |