はじめに
仕事でGitHubプロジェクト(カンバン)を利用しており、Terminalで閲覧したかったため、作成してみました。
Organizationに紐づいているGitHubプロジェクトにはまだ未対応ですが、今後対応する予定です。
リポジトリはこちら。
どんなツール?
例としてmicrosoft/vscode
のGitHub Projectを本ツールでターミナル上に表示してみます。
コマンドは下記のような形で以下を指定します。
repo
オプション(必須): リポジトリOWNER/リポジトリNAME
search
オプション: プロジェクト名(デフォルトで1番目が選択される)
$ kanban --repo microsoft/vscode --search "Deepak & Ben"
機能
出来ること
- プロジェクトの閲覧
- issue内容の確認(CtrN/CtrPでスクロール)
- 画面のリフレッシュ(R)
- プロジェクトをブラウザで開く(P)
- issueをブラウザで開く(p)
これから出来るようにしたいこと
- Organizationに紐づいたプロジェクトの表示
- issueの編集
- issue、メモのカラム間移動
- APIエラーの詳細を画面に表示して通知
インストール/使い方
リポジトリのREADME.mdに記載しています。(InstallationとConfigurationの項目で設定は完了です)
GitHubのトークンが必要となりますので、利用の際には注意してください。
技術
Goで作成しています。
Go自体業務で利用経験がなく、ほぼ初めてのため、コードは不安なところが多いです。。
至らない点がありましたら、FBを頂けるとありがたいです。
tviewというTUI用のライブラリが、マルチバイト文字列をかける事なく表示でき、助かりました。
参考
docui
実装ともにすごく参考にさせて頂きました。コードもとても読みやすかったです。
gh
GitHubの公式CLIです。GraphQLのリクエスト方法など参考にさせて頂きました。
最後に
作成する過程で、いくつかハマりポイントがあったのでそちらは別記事で書こうと思います!
勿論、issueやPR大歓迎です!