- Implement CSS custom properties for theming - Add comprehensive light and dark color schemes - Create theme toggle button in header - Add theme persistence with localStorage - Support system color scheme preference - Smooth transitions between themes 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
69 lines
2.6 KiB
HTML
69 lines
2.6 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<title>This Little Corner (Python)</title>
|
|
<link rel="stylesheet" href="/static/style.css" />
|
|
<script src="https://cdn.jsdelivr.net/npm/d3@7/dist/d3.min.js"></script>
|
|
</head>
|
|
<body>
|
|
<header>
|
|
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px;">
|
|
<h1 style="margin: 0;">This Little Corner — Elastic Search</h1>
|
|
<button id="themeToggle" style="padding: 8px 16px; cursor: pointer; border-radius: 4px; border: 1px solid var(--color-border-primary); background: var(--color-bg-button); color: var(--color-text-primary); font-size: 14px; transition: background 0.2s;" title="Toggle dark mode">
|
|
🌙 Dark Mode
|
|
</button>
|
|
</div>
|
|
<p class="muted">
|
|
Enter a phrase to query title, description, and transcript text.
|
|
</p>
|
|
</header>
|
|
|
|
<section class="controls">
|
|
<input id="q" type="text" placeholder="Search..." size="40" />
|
|
<details id="channelDropdown" class="channel-dropdown">
|
|
<summary id="channelSummary">All Channels</summary>
|
|
<div id="channelOptions" class="channel-options muted">
|
|
<div>Loading channels…</div>
|
|
</div>
|
|
</details>
|
|
<select id="sort">
|
|
<option value="relevant">Most relevant</option>
|
|
<option value="newer">Newest first</option>
|
|
<option value="older">Oldest first</option>
|
|
</select>
|
|
<select id="size">
|
|
<option value="10">10</option>
|
|
<option value="25">25</option>
|
|
<option value="50">50</option>
|
|
</select>
|
|
<button id="searchBtn">Search</button>
|
|
</section>
|
|
<section class="controls muted">
|
|
<label><input type="checkbox" id="exactToggle" checked /> Exact</label>
|
|
<label><input type="checkbox" id="fuzzyToggle" checked /> Fuzzy</label>
|
|
<label><input type="checkbox" id="phraseToggle" checked /> Phrase</label>
|
|
<label><input type="checkbox" id="queryStringToggle" /> Query string mode</label>
|
|
</section>
|
|
|
|
<section class="summary-row">
|
|
<div class="summary-left">
|
|
<section id="meta" class="muted"></section>
|
|
<section id="metrics">
|
|
<div id="metricsStatus" class="muted"></div>
|
|
<div id="metricsContent"></div>
|
|
</section>
|
|
</div>
|
|
<div class="summary-right">
|
|
<section id="frequencySummary" class="muted"></section>
|
|
<div id="frequencyChart"></div>
|
|
</div>
|
|
</section>
|
|
|
|
<section id="results"></section>
|
|
|
|
<script src="/static/app.js"></script>
|
|
</body>
|
|
</html>
|