annie.app¶
NiceGUI application entry — assembles the four tabs into one page.
This is the only module that touches NiceGUI’s app lifecycle. It applies the
global theme colour, builds a fixed primary header bar that carries the logo,
the tab navigation (Dataset, Browse, Annotator, Settings), and the version — all
white-on-primary and always visible — then starts the server bound to the
configured host/port. Run it with python -m annie.app, make run, or the
installed annie console script.
The UI is built per browser connection via @ui.page("/")
(not the shared auto-index) so every client has a live connection and a running
event loop while it builds. That is what lets the rows decode their frames as
background tasks bound to the real client, instead of a build-time timer firing
against a torn-down auto-index client.