LinearやJIRAに負けない操作感!セルフホスト可能なタスク管理の決定版「Plane」とは?
その名も……「Plane(プレーン)」だ! 「JIRAは重いし、Linearはお金がかかるし、あぁ〜!!」ってなっている君、必見だよ!
さあ、ミュージック、スタート!
はい、まずは屈伸運動から〜! Planeがどうしてすごいのか、3つのポイントで説明するよ!
爆速UIでストレスゼロ! Reactで作られたサクサクの画面で、イシュー(課題)の登録が止まらない!「あれ、今ロード中?」なんて時間はもういらないんだ!
オープンソース(OSS)の安心感! 「データは自分たちのサーバーで管理したい」っていうワガママな願いも、Dockerがあれば一発解決。カスタマイズも自由自在だ!
Pythonエンジニアにも優しい! バックエンドはPython(Django)で書かれているから、いざとなったら中身を覗いて「なるほどね〜」って納得できちゃうんだ。
次は腕を大きく回して、セットアップの準備だよ! エンジニアなら、手作業でポチポチなんてしないよね? Docker Composeで一気に立ち上げるぞ!
適当なディレクトリを作る! mkdir plane-hero && cd plane-hero
公式サイトから setup.sh を持ってくる!
コマンドを叩く!
# セットアップスクリプトをダウンロード!
curl -fsSL https://raw.githubusercontent.com/makeplane/plane/master/deploy/self-host/install.sh -o setup.sh
# 実行権限を与えて、GOだ!
chmod +x setup.sh
./setup.sh
「おっと!データベースの準備ができるまで、ちょっと深呼吸して待とうね!」 これだけで、自分専用のタスク管理システムが爆誕するんだ。すごいよね!
さあ、ここからは応用編!「自動でイシューを作りたい!」っていう欲張りな君のために、Pythonでの操作例を紹介するよ。
「はい、キーボードを叩くポーズ、決まったー!」
import requests
# 君のPlane URLとAPIキーをセット!
API_BASE_URL = "http://localhost/api/v1"
API_TOKEN = "your_awesome_api_token"
headers = {
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json"
}
# 新しいイシュー(課題)をガツンと追加!
payload = {
"name": "バグを退治するぞ!",
"description": "お兄さんとの約束だ!",
"priority": "urgent"
}
response = requests.post(
f"{API_BASE_URL}/workspaces/my-team/projects/hero-project/issues/",
json=payload,
headers=headers
)
if response.status_code == 201:
print("イシュー作成完了!ナイスバルク!")
else:
print("おっと、エラーだ!深呼吸してコードを見直そう!")
みんな、お疲れ様! Planeを使えば、複雑なプロジェクトも「エイヤッ!」と整理整頓できちゃうんだ。
React のモダンなUI!
Python の拡張性!
Docker の手軽さ!
この3拍子が揃ったPlane、ぜひ試してみてね! 「よーし、これで進捗もバッチリだね!明日も元気にデプロイしよーう!」