mirror of
https://github.com/thegeneralist01/archivr
synced 2026-10-09 21:03:17 +02:00
Add YouTube subtitles, local transcription, self-updating yt-dlp/Deno, X Article and thread titles
- Capture YouTube subtitles by default (opt-out in UI, API, CLI --no-subtitles) - Summarize YouTube videos from subtitles; fetch on demand, then local transcription, then error - Local transcription fallback: Whisper, Parakeet, Phonon-2 (English only) - Runtime-resolved, self-updating yt-dlp and Deno JS runtime (fixes YouTube 403s) - Settings > Instance > yt-dlp: status and in-app update without restart - X Article titles from article.title, with idempotent startup backfill - Thread title generation (single and bulk) with per-provider cheap models - Per-provider title model settings in Settings > Instance - Docs, mental model, AGENTS.md and transcription spec updated
This commit is contained in:
parent
4f3b2968b6
commit
253f779216
35 changed files with 11377 additions and 583 deletions
|
|
@ -638,6 +638,9 @@ select {
|
|||
}
|
||||
.bulk-coll-select:focus { border-color: var(--accent); }
|
||||
.tag-add-btn:disabled { opacity: 0.45; cursor: default; }
|
||||
.bulk-title-note { font-size: 12px; color: var(--muted); margin: 6px 0 0; }
|
||||
.bulk-title-note.form-msg--ok { color: var(--link); }
|
||||
.bulk-title-note.form-msg--err { color: var(--accent); }
|
||||
|
||||
/* ── Rail delete zone ───────────────────────────────────────────────────── */
|
||||
.rail-delete-zone {
|
||||
|
|
@ -2097,6 +2100,16 @@ select {
|
|||
}
|
||||
.admin-table td:first-child { padding-left: 16px; }
|
||||
.admin-table tr:hover td { background: var(--paper-2); }
|
||||
/* ── Settings › yt-dlp ── */
|
||||
.ytdlp-section { max-width: 760px; }
|
||||
.ytdlp-summary { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 0 0 12px; font-size: 14px; }
|
||||
.ytdlp-summary dt { font-weight: 700; color: var(--muted); }
|
||||
.ytdlp-summary dd { margin: 0; }
|
||||
.ytdlp-path { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; word-break: break-all; }
|
||||
.ytdlp-table-wrap { overflow-x: auto; margin: 6px 0 14px; border: 1px solid var(--line-soft); }
|
||||
.ytdlp-row--chosen td { background: var(--paper-2); }
|
||||
.ytdlp-badge { font-size: 11px; font-weight: 700; color: var(--paper); background: var(--link); border-radius: 3px; padding: 1px 6px; white-space: nowrap; }
|
||||
.ytdlp-actions { display: flex; gap: 8px; align-items: center; margin: 8px 0; }
|
||||
.admin-row-disabled td { opacity: 0.45; }
|
||||
.admin-section { margin-bottom: 36px; max-width: 860px; }
|
||||
.admin-section h2 {
|
||||
|
|
@ -3384,6 +3397,12 @@ body.has-audio-bar { padding-bottom: 56px; }
|
|||
font-size: 11px;
|
||||
line-height: 1.4;
|
||||
}
|
||||
.rail-summary-transcribe-note {
|
||||
margin: 0;
|
||||
font-size: 11px;
|
||||
line-height: 1.4;
|
||||
color: var(--muted);
|
||||
}
|
||||
.rail-summary-image-option--disabled {
|
||||
color: var(--muted-2);
|
||||
background: var(--paper);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue