Directories
¶
| Path | Synopsis |
|---|---|
|
Package chain broadcasts the two on-chain actions cosmo-tui takes: sending an objekt (an ERC-721 transferFrom) and casting a gravity vote (an ERC-1155 COMO transfer).
|
Package chain broadcasts the two on-chain actions cosmo-tui takes: sending an objekt (an ERC-721 transferFrom) and casting a gravity vote (an ERC-1155 COMO transfer). |
|
Package config handles cosmo-tui's on-disk state: credential storage and the user's runtime configuration.
|
Package config handles cosmo-tui's on-disk state: credential storage and the user's runtime configuration. |
|
Package cosmo is the API client for api.cosmo.fans: auth/token lifecycle, login, and the room/live/talk feature endpoints.
|
Package cosmo is the API client for api.cosmo.fans: auth/token lifecycle, login, and the room/live/talk feature endpoints. |
|
Package external launches the user's real media tools: a URL/file opener, mpv for viewing, and ffmpeg for muxing downloaded replay tracks.
|
Package external launches the user's real media tools: a URL/file opener, mpv for viewing, and ffmpeg for muxing downloaded replay tracks. |
|
Package hls downloads a Cloudflare Stream VOD from its HLS master playlist.
|
Package hls downloads a Cloudflare Stream VOD from its HLS master playlist. |
|
Package members is the static roster for the Cosmo groups.
|
Package members is the static roster for the Cosmo groups. |
|
Package tui is the cosmo-tui app shell: a tab bar over a set of page models, with group switching, help, and quit.
|
Package tui is the cosmo-tui app shell: a tab bar over a set of page models, with group switching, help, and quit. |
|
clip
Package clip reads the host clipboard for the app's text boxes.
|
Package clip reads the host clipboard for the app's text boxes. |
|
gravity
Package gravity is the Gravity page: a category list on the left (Ongoing and Past, both from /v4/gravities - see cosmo.OngoingGravities for why the live one is not fetched with category=ongoing), the selected category's gravities on the right, and a full-page detail view for the highlighted gravity.
|
Package gravity is the Gravity page: a category list on the left (Ongoing and Past, both from /v4/gravities - see cosmo.OngoingGravities for why the live one is not fetched with category=ongoing), the selected category's gravities on the right, and a full-page detail view for the highlighted gravity. |
|
info
Package info is the artist info page: the current group's public card (title, fandom name), the member roster with aliases, official colors and units, and the group's SNS links.
|
Package info is the artist info page: the current group's public card (title, fandom name), the member roster with aliases, official colors and units, and the group's SNS links. |
|
keynav
Package keynav defines the app's uniform navigation keys.
|
Package keynav defines the app's uniform navigation keys. |
|
listfilter
Package listfilter routes the bubbles list filter's async result back to the list that asked for it.
|
Package listfilter routes the bubbles list filter's async result back to the list that asked for it. |
|
live
Package live is the live page: a member list on the left (with an "All" entry like the room page), that member's live-stream VOD history on the right, with view (mpv) via an external process and download (a native parallel HLS fetch muxed with ffmpeg).
|
Package live is the live page: a member list on the left (with an "All" entry like the room page), that member's live-stream VOD history on the right, with view (mpv) via an external process and download (a native parallel HLS fetch muxed with ffmpeg). |
|
login
Package login is the first-run Privy sign-in flow as a Bubble Tea model.
|
Package login is the first-run Privy sign-in flow as a Bubble Tea model. |
|
news
Package news is the news page: a category list on the left (Announcements from /notices, Schedule from /artist-schedules, Notifications from /notification-center), the selected category's entries on the right, and a full-page detail view for the highlighted entry.
|
Package news is the news page: a category list on the left (Announcements from /notices, Schedule from /artist-schedules, Notifications from /notification-center), the selected category's entries on the right, and a full-page detail view for the highlighted entry. |
|
objekt
Package objekt is the Objekt page: the user's owned objekt collection for the active group, laid out as a grid of per-copy cards.
|
Package objekt is the Objekt page: the user's owned objekt collection for the active group, laid out as a grid of per-copy cards. |
|
profile
Package profile is the account profile page.
|
Package profile is the account profile page. |
|
room
Package room is the room page: a member list on the left, that member's posts on the right, with external media viewing and downloading.
|
Package room is the room page: a member list on the left, that member's posts on the right, with external media viewing and downloading. |
|
style
Package style holds shared TUI rendering helpers used by both the app shell and the individual page packages.
|
Package style holds shared TUI rendering helpers used by both the app shell and the individual page packages. |
|
talk
Package talk is the talk page: a member-channel sidebar, a message viewport, and a reply box, with realtime delivery over the Talk SSE feed.
|
Package talk is the talk page: a member-channel sidebar, a message viewport, and a reply box, with realtime delivery over the Talk SSE feed. |
|
textfmt
Package textfmt normalizes Cosmo API text for terminal display.
|
Package textfmt normalizes Cosmo API text for terminal display. |
|
uimsg
Package uimsg holds tea.Msg types shared between the app shell and page packages.
|
Package uimsg holds tea.Msg types shared between the app shell and page packages. |
|
usersearch
Package usersearch is a reusable nickname-search widget: a text box that runs GET /users/search and a scrolling results list to pick a match from.
|
Package usersearch is a reusable nickname-search widget: a text box that runs GET /users/search and a scrolling results list to pick a match from. |
|
Package wallet reconstructs the Cosmo user's Privy embedded-wallet signing key and signs the on-chain objekt transfer that "sending" an objekt actually is: a ZKsync (Abstract) type-0x71 transaction whose AGW smart-account custom signature is an ECDSA signature from the Privy EOA.
|
Package wallet reconstructs the Cosmo user's Privy embedded-wallet signing key and signs the on-chain objekt transfer that "sending" an objekt actually is: a ZKsync (Abstract) type-0x71 transaction whose AGW smart-account custom signature is an ECDSA signature from the Privy EOA. |
Click to show internal directories.
Click to hide internal directories.