Skip to content

Repository files navigation

🐙 Takohachi 🐙

GitHub top language GitHub Workflow Status Ruff GitHub issues Discord open in vscode

Takohachi is useless Discord bot.
But he has romance.

🐙 About

これはピスタチオゲーム部親睦会というDiscordサーバーのためのユースレスBotです。

⚙ Functions

https://github.com/pistachiostudio/takohachi/tree/main/src/cogs

🪂 installing Packages & Dependencies

With uv🌾

An extremely fast Python package and project manager, written in Rust.

$ uv sync

🚄 Auto deployment on Railway

Takohachi は現在 Railway にデプロイされている。

  • main ブランチへの push をトリガーに、Railway 側の連携によって自動でビルド・デプロイされる。
  • ビルドはリポジトリの Dockerfile を使用。
  • 環境変数は Railway プロジェクトの Variables で管理する(詳細は下記「Create .env file」を参照)。
flowchart LR

Z(Codes)
B(main<br>branch)
C(Docker Build)
D[(SQLite)]
I(Env Vars)
J(((Discord)))

subgraph Local
Z
end

subgraph GitHub
B
end

subgraph Railway
C
D
I
end

Z -- Push --> B
B -- Auto deploy --> C
I -- inject --> C
C o--o D
C <--> J
Loading

🔍 PR Environments (プレビュー環境)

Pull Request を作成すると、Railway が自動でテスト用の環境とテスト用 Bot を立ち上げる。PR をクローズ/マージすると環境は自動で削除される。

  • PR 環境の環境変数は pr-base 環境(production を複製し、TOKEN のみテスト用 Bot のトークンに差し替えたテンプレート環境)をベースにコピーされる。
  • TOKEN 以外(GUILD_ID やチャンネル/VC ID 等)は本番と共通のため、テスト用 Bot は本番と同じ Discord サーバー・チャンネルで動作する。
  • pr-base の変数を更新しても、既存の PR 環境には反映されない(コピーはPR環境の作成時のみ行われる)。反映するには PR 環境を作り直す(PR を close → reopen 等)。
  • wt_task や autodelete などの定期実行タスクは PR 環境でも動作し、本番と重複投稿する可能性がある(現時点では許容)。

🐳 Local Development with Docker

Railway 上の本番環境とは別に、ローカルでも同じ Dockerfile を使って動作確認ができる。

1. Clone this repository

$ git clone https://github.com/pistachiostudio/takohachi.git

2. Create .env file on the root directory

OPENAI_API_KEY=''
TOKEN=''
PREFIX='!!'
CARDCOUNT_KEY=''
CLIENT_SECRET=''
DATABASE_URL=''
DIC_KEY=''
DRIVE_FOLDER_ID=''
GOOGLE_APPLICATION_CREDENTIALS=''
INU_VC_ID=''
NEKO_VC_ID=''
KAME_VC_ID=''
KYORYU_VC_ID=''
LOG_TEXT_CHANNEL_ID=''
SPOTIFY_CLIENT_ID=''
SPOTIFY_CLIENT_SECRET=''
SSLADD_KEY=''
TAKOHACHI_JSON=''
TRN_API_KEY=''

3. Run

$ docker compose up -d

🔫 Yeah_bot_is_on_ready!!

🎨 Icons

by Go Inagaki by Imoya

🐕 Pistachio Studio

川崎のヒップホップ/録音/プロデューサーチーム。ヒップホップクルー = CBSとそのバックバンドChicken Is Niceを中心に15年以上活動中。 全員30超え、仕事あり、家庭あり、ガキもあり、ペットもあり、かなり限界ながらも活動中。 chelmicoというラップユニットの裏方や、シンガーソングライター iriのプロデュースなどもやっています。 ピスタチオゲーム部親睦会はPistachio Studioのメンバーが中心となって発足したエンジョイゲームコミュニティです。

🔗 Links

🤝 License

Takohachi is released under the MIT license. ©2024 Pistachio Gaming & Pistachio Studio.

Used by

Contributors

Languages