Help us understand the problem. What is going on with this article?

GitHubプロジェクト(カンバン)をターミナルで確認するツールを作ってみた

はじめに

仕事でGitHubプロジェクト(カンバン)を利用しており、Terminalで閲覧したかったため、作成してみました。
Organizationに紐づいているGitHubプロジェクトにはまだ未対応ですが、今後対応する予定です。
リポジトリはこちら

どんなツール?

例としてmicrosoft/vscodeのGitHub Projectを本ツールでターミナル上に表示してみます。
image.png

コマンドは下記のような形で以下を指定します。
repoオプション(必須): リポジトリOWNER/リポジトリNAME
searchオプション: プロジェクト名(デフォルトで1番目が選択される)

$ kanban --repo microsoft/vscode --search "Deepak & Ben"

image.png

動いている様子は、こちらです。
kanban.gif

機能

出来ること

  • プロジェクトの閲覧
  • 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大歓迎です!

hozi894
GoとかVimとかPythonとか
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした