Newer
Older
navi-1 / client / index.html
@Eugene Sukhodolskiy Eugene Sukhodolskiy on 16 Apr 2 KB Restore vanilla JS client/index.html
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>Navi</title>
  <link rel="icon" type="image/webp" href="/static/images/logo-icon.webp" />
  <link rel="stylesheet" href="/static/style.css" />
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/highlight.js@11/styles/atom-one-dark.min.css" />
</head>
<body>
  <div class="sidebar-backdrop" id="sidebar-backdrop"></div>
  <div class="app">

    <!-- Sidebar -->
    <aside class="sidebar">
      <div class="sidebar-header">
        <h1><img src="/static/images/logo.svg" alt="Navi" class="sidebar-logo" />Navi</h1>
        <select id="profile-select"></select>
        <button class="btn-new" id="btn-new">+ New Chat</button>
      </div>
      <div class="session-list" id="session-list">
        <div class="empty-sessions">No conversations yet</div>
      </div>
    </aside>

    <!-- Chat -->
    <main class="chat">
      <div class="chat-header" id="chat-header">
        <button class="btn-sidebar-toggle" id="btn-sidebar-toggle" title="Toggle sidebar">☰</button>
        <span id="chat-header-title">Select a profile and start a new chat</span>
        <span id="token-counter" class="token-counter" hidden></span>
      </div>

      <div class="messages" id="messages">
        <div class="empty-chat">
          <div class="icon">💬</div>
          <p>Start a new conversation</p>
        </div>
      </div>

      <div class="input-bar">
        <div class="image-preview-strip" id="image-preview-strip"></div>
        <div class="upload-progress-bar" id="upload-progress-bar" hidden>
          <div class="upload-progress-fill" id="upload-progress-fill"></div>
          <span class="upload-progress-label" id="upload-progress-label"></span>
        </div>
        <div class="input-row">
          <input type="file" id="file-input" multiple style="display:none" />
          <button class="btn-attach" id="btn-attach" disabled title="Attach files (or paste images from clipboard)">📎</button>
          <textarea
            id="input"
            placeholder="Type a message… (Enter to send, Shift+Enter for newline)"
            rows="1"
          ></textarea>
          <button class="btn-send" id="btn-send" disabled title="Send (Enter)">↑</button>
        </div>
      </div>
    </main>

  </div>
  <script type="module" src="/static/js/app.js"></script>
</body>
</html>