Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/moali87/jirust
Jira terminal UI
https://github.com/moali87/jirust
cli jira productivity rust terminal tool tools tui
Last synced: 3 months ago
JSON representation
Jira terminal UI
- Host: GitHub
- URL: https://github.com/moali87/jirust
- Owner: Code-Militia
- License: apache-2.0
- Created: 2023-01-19T14:48:46.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-11T05:23:04.000Z (9 months ago)
- Last Synced: 2024-05-21T17:23:10.493Z (6 months ago)
- Topics: cli, jira, productivity, rust, terminal, tool, tools, tui
- Language: Rust
- Homepage:
- Size: 814 KB
- Stars: 99
- Watchers: 3
- Forks: 2
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-ratatui - Jirust - A Jira TUI. (💻 Apps / 🚀 Productivity and Utilities)
README
# Jirust - WIP
A terminal UI for jira written in rust.An application with developers and engineers in mind. It is solely focused on updating tickets at the moment.
![jirust](https://user-images.githubusercontent.com/7011993/225179809-b4683ea5-93e5-4c4c-abf5-e6534df0f5a3.gif)https://github.com/moali87/jirust/assets/7011993/f3286c68-5dc8-4e90-a43c-a428215b6d96
## Install
make sure you have Rust installed. See https://www.rust-lang.org/tools/installRun `cargo install jirust`
## Important notices
* This is currently tested with JIRA cloud.
* I (Author: Mo Ali) am an infrastructure engineer by trade. This is my first programming project that I'm sharing out. This is also my first rust project and am using it to learn rust. You can watch my development on [twitch](https://www.twitch.tv/mo_ali141)## Current requirements
You will need a config file in `$HOME/.config/jirust/config.toml`. Please look at the sample.toml for its contents.
Instead of specifying `api_key` in `config.toml`, you can instead set the `JIRA_API_KEY` environment variable.
## Current capabilities
* List projects
* Filter/Search projects (Search JIRA API if not found within pagination limit)
* List tickets
* List ticket details such as labels, components, description, and parent ticket even if parent is another ticket or epic.
* Filter/Search ticket (Search JIRA API if not found within pagination limit)
* View ticket in browser
* List ticket comments
* Add comments to ticket
* Move ticket to another status (ex: To do -> In Progress)## Default keys
* Filter/Search: "/"
* Help: "?"## Usage (Youtube)
[link](https://www.youtube.com/watch?v=gRgz1M30q9I)## TODO:
- [X] UI to generate a list of all projects
- [X] Pagination for projects greater than the max limit returned by JIRA rest API
- [X] UI to list all issues/tasks on selected project
- [X] Pagination list issues greater than the max limit returned by JIRA rest API
- [X] UI to view selected issue details
- [X] Only view specified ticket status
- [X] Only view tickets assigned to specific user
- [ ] POC support for JIRA data types such as tables, list, and code blocks using atlassian document format
- [ ] Add functionality to support ticket sorting by sprint## Credit
I've been copying a lot of [gobang](https://github.com/TaKO8Ki/gobang/tree/main) project. This wouldn't have been possible if it wasn't for that project. Thank you.