Skip to content

feat: ✨ enhance tui for metadata exploration#332

Draft
joelostblom wants to merge 28 commits into
mainfrom
term-multi-page-tui
Draft

feat: ✨ enhance tui for metadata exploration#332
joelostblom wants to merge 28 commits into
mainfrom
term-multi-page-tui

Conversation

@joelostblom
Copy link
Copy Markdown
Contributor

@joelostblom joelostblom commented May 6, 2026

Merge after #331 and discussion in #330

Description

Follow up on #331 with all the features shown in the demo in #330:

  • Better keyboard navigation
  • Selection and copying
  • Table sorting
  • Search and table query
  • Nice styling
  • Improve performance by pre-loading and caching tables

Needs a thorough review.

Checklist

  • Ran just run-all

joelostblom added 28 commits May 4, 2026 15:51
- Replaced per-switch Markdown.update(page.content) with ContentSwitcher.
- Each metadata page is mounted once as its own Markdown widget.
- Switching pages now only sets ContentSwitcher.current, so Textual does not re-parse/re-render Markdown on every navigation.
- Added tests confirming page switches do not call Markdown.update.
- Startup is heavier for large packages because all pages are rendered up front.
Markdown table rendering might not be the best choice in terminal
…rough the resources

E.g. if someone is holding down the arrow key or similar
Could lead to unintentional quitting when trying to get out of search
- Replaced --viewer with --mode.
- New modes:
  - tui
  - stdout
- view now defaults to TUI.
- Removed pager mode.
- Removed --style from view.
- Removed ViewStyle.
- view --mode stdout now renders directly from raw Data Package properties with one terminal-oriented format.
- Stdout output includes resource separators with horizontal rules.
- Updated CLI tests and docs/design docs.
@joelostblom joelostblom moved this from Todo to In Review in Product development May 6, 2026
@joelostblom joelostblom marked this pull request as draft May 7, 2026 07:14
@joelostblom joelostblom moved this from In Review to In Progress in Product development May 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant