Expand description
The dashboard page and the htmx fragments behind each tab.
Constantsยง
- DIALOGUE_
PAGE_ ๐SIZE - INDEX ๐
- NO_TAG ๐
Functionsยง
- asset
GET /assets/{name}: the pageโs script, style and the vendored htmx.- audio_
play GET /audio/play?ep=&filter=&stem=: copy the stem into the local cache and return a player. Only a stem of the chosen episode is accepted.- audio_
play_ all POST /audio/play-all: every stem of one kind, joined.- audio_
stems GET /audio/stems?ep=&filter=: the stem dropdown, which loads the first stem into the player as soon as it lands.- blocking ๐
- Run blocking filesystem work off the async executor.
- config_
choice_ ๐list - config_
choices GET /config/{kind}/choices.- config_
load GET /config/{kind}/load?path=: a fresh editor textarea.- config_
save POST /config/{kind}/save.- config_
tab ๐ - One config-editor tab: a file dropdown, the editor, and Reload / Save.
- default_
python ๐ - dialogue_
panel ๐ - The
#dlg-panelfragment: search results, paginated. - dialogue_
row ๐ - entry_
edit_ ๐form - The inline speaker+text editor for one dialogue line.
- episode_
options GET /choices/episodes?ep=: episode<option>s, keeping the current selection.- episodes_
table GET /episodes/table?force=.- grade_
panel ๐ - grade_
status_ ๐line - grades_
apply POST /grades/apply: write the grade, then show the list again with the same file selected, or the first one when it left the filter.- grades_
list GET /grades/list?filter=&refresh=.- grades_
select GET /grades/select?path=: player plus the grade line.- index
GET /: the whole dashboard.- int ๐
- invalidate_
choices POST /choices/invalidate: the โณ Refresh button, before it asks every list to redraw.- is_
config_ ๐kind - job_
fragment ๐ - job_
stream GET /jobs/{id}/stream: the jobโs lines as server-sent events, ending with oneexitevent. A job can be followed once.- kind_
label ๐ - log_pre ๐
- on ๐
- param ๐
- parsed_
dialogue GET /parsed/dialogue?ep=&q=&page=.- parsed_
editor ๐ - The editor textarea, used both for the pageโs first render and for the fragment that replaces it โ one definition, so the two cannot drift.
- parsed_
entry_ load GET /parsed/entry?ep=&seq=: the inline edit panel for one dialogue line.- parsed_
entry_ save POST /parsed/entry: save one dialogue line, then tell#dlg-panelto reload so the table reflects the edit.- parsed_
load GET /parsed/load?ep=: a fresh editor textarea.- parsed_
save POST /parsed/save.- player ๐
- produce_
form ๐ - project_
load GET /project.- project_
panel ๐ - project_
save POST /project/save.- reprocess_
banner ๐ - A banner naming the dialogue lines edited since their audio was last
produced, with a button that jumps to Run Stage โ Produce, pre-filled
with this episode,
--seq-listand--force. Empty when nothing is pending. The user still presses Run themselves โ this dashboard never starts a pipeline stage on its own behalf. - run_
stage POST /run/{stage}: validate, build the command, start it, and return a log that follows the job.- script_
meta ๐ - script_
options GET /choices/scripts.- scripts_
analyze POST /scripts/analyze.- scripts_
save POST /scripts/save: then refresh every script and episode list.- setup_
init POST /setup/init:xil init, streamed.- setup_
use POST /setup/use:xil use SHOW, then tell the Project tab to reload.- show_
options GET /choices/shows: shows with the active one selected.- timeline
GET /timeline?ep=.- timeline_
iframe_ html _timeline_iframe_html(html_path): the timeline in an iframe, with its mtime as a cache-buster so a regenerated file is always refetched.- with_
trigger ๐ - A fragment plus an
HX-Triggerevent for other elements to react to.