bowtie-json-schema / bowtie-json-schema/bowtie

(Re-)add `bowtie tui`, a TUI for interacting with implementations

Open
#883 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
93
Forks
77
Avg merge
10h 29m
Merged PRs (30d)
40

Description

We should write a nice TUI for executing Bowtie commands.

Some possible ideas are:

* an interactive evaluator of schemas/instances which keeps harnesses running in the background and streams over their outputs
* the ability to export/save schemas/instances/results as a report
* the ability to generate JSON Schema Test Suite test cases! And maybe even PRs
* ...

I'm labelling this as good-first-issue not because it's easy, but because it's self contained, and a fun project. Such a tui should use `rich`, and ideally be reasonably tested with automated tests. For anyone who picks this issue up, feel free to carve out only a minimal first version of this and to open further issues for any of the above further ideas (or your own).

(n.b. we used to have a similarly named `bowtie tui` which simply used [trogon](https://github.com/Textualize/trogon/), but which essentially was just a tool for assembling CLI invocations that as far as I know saw little actual use, had some bad bugs like #853 and certainly wasn't as useful as a true TUI.)

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the existing Bowtie commands and the former trogon-based `bowtie tui` behavior. Define a minimal first version rather than implementing every proposed idea, use `rich`, and add automated tests. Done means the TUI provides a useful initial way to interact with Bowtie implementations.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.