Better UI/UX for Polaris CLI
- Dominant language
- Java
- Stars
- 2.1k
- Forks
- 522
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 137
Description
### Is your feature request related to a problem? Please describe.
Hello,
Polaris CLI starts with very basic CLI output (primary output in unformatted JSON). This is great and use-able as people can use tool such as `jq` to parse those and get the needed info. As we added couple more ability to Polaris CLI recently where we are no longer only produce JSON output such as following:
1. Setup command: https://github.com/apache/polaris/pull/3929
2. Summarized sub-command: https://github.com/apache/polaris/pull/4003
3. Tables/Find commands (still under review): https://github.com/apache/polaris/pull/4075
I think we should use some additional library to make Apache Polaris CLI more modern such as python rich library (https://github.com/textualize/rich) and python click library (https://github.com/pallets/click) for more enriched UI and better UX.
Taking setup command as an example. Here is what we are currently provided as of today (credentials below are randomly generated string thus nothing sensitive):
It is use-able but way too verbose and hard to keep track of things if this is really some massive deployment.
Here is the revised output with same command but implemented with rich library on my local setup (credentials below are randomly generated string thus nothing sensitive):
What do you think? Should we proceed with those more modern libraries or stick with what we currently have and use plain text only.
Thanks,
Yong Zheng
### Describe the solution you'd like
_No response_
### Describe alternatives you've considered
_No response_
### Additional context
ML: https://lists.apache.org/thread/fqjklpptr1k35h2tkjd377xfkc6g0kyf
Contributor guide
Research direction
Start by reviewing the Polaris CLI changes for the setup, summarized, and tables/find commands, along with the linked mailing-list discussion, to understand the current output paths and proposed scope. Before implementation, agree whether Rich and Click should be adopted and define the covered subcommands and output modes; done should mean an agreed, documented UX direction.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, developer-experience
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100