Files
neon-chat/templates/index.html
T
arch_agent e1b54181dc NeonChat v1.0 — Lokaler RP-Chatbot
Features:
- FastAPI Backend + Ollama Integration
- Character System (JSON-basiert, einfach zu erstellen)
- Kurzzeitgedächtnis (SQLite, letzte 20 Nachrichten)
- Langzeitgedächtnis (automatische Zusammenfassungen alle 20 Nachrichten)
- Moderne Web-UI (dunkles Theme, Neon-Accents)
- Character-Erstellungs-Seite im Browser
- Beispiel-Character: Mara (Barista, zynisch, warmherzig)
- Unzensiert (lokal, keine Cloud)
- Gedächtnis-Panel (Ein- und Ausblenden)
- Vergessen-Funktion (Gedächtnis löschen)
2026-07-24 14:28:01 +02:00

61 lines
2.8 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>NeonChat</title>
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
font-family: 'Segoe UI', system-ui, sans-serif;
background: #0a0a0f;
color: #e0e0e8;
min-height: 100vh;
}
.container { max-width: 1200px; margin: 0 auto; padding: 20px; }
h1 {
font-size: 2rem; font-weight: 700;
background: linear-gradient(135deg, #ff006e, #8338ec, #3a86ff);
-webkit-background-clip: text; -webkit-text-fill-color: transparent;
margin-bottom: 8px;
}
.subtitle { color: #6b6b80; font-size: 0.95rem; margin-bottom: 30px; }
.char-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }
.char-card {
background: #15151f; border: 1px solid #252535; border-radius: 14px;
padding: 20px; cursor: pointer; transition: all 0.2s;
display: flex; gap: 14px; align-items: center;
}
.char-card:hover { border-color: #8338ec; transform: translateY(-2px); box-shadow: 0 4px 20px rgba(131,56,236,0.15); }
.char-avatar { font-size: 2rem; width: 52px; height: 52px; display: flex; align-items: center; justify-content: center; background: #1e1e2e; border-radius: 50%; }
.char-info h3 { font-size: 1.1rem; margin-bottom: 4px; }
.char-info p { font-size: 0.85rem; color: #6b6b80; line-height: 1.4; }
.new-card {
background: transparent; border: 2px dashed #353545; border-radius: 14px;
display: flex; align-items: center; justify-content: center;
min-height: 90px; cursor: pointer; color: #6b6b80; transition: all 0.2s;
}
.new-card:hover { border-color: #ff006e; color: #ff006e; }
</style>
</head>
<body>
<div class="container">
<h1>✦ NeonChat</h1>
<p class="subtitle">Lokaler RP-Chatbot · Wähle einen Charakter oder erstelle einen neuen</p>
<div class="char-grid">
{% for c in characters %}
<div class="char-card" onclick="location.href='/chat/{{ c.name | urlencode }}'">
<div class="char-avatar">{{ c.avatar }}</div>
<div class="char-info">
<h3>{{ c.name }}</h3>
<p>{{ c.description[:80] }}{% if c.description|length > 80 %}...{% endif %}</p>
</div>
</div>
{% endfor %}
<div class="new-card" onclick="location.href='/create'">
<span style="font-size: 1.5rem;"> Neuer Charakter</span>
</div>
</div>
</div>
</body>
</html>