Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aqyuki/cum
4代目のDiscord Botです.
https://github.com/aqyuki/cum
discord-bot discordgo golang
Last synced: about 1 month ago
JSON representation
4代目のDiscord Botです.
- Host: GitHub
- URL: https://github.com/aqyuki/cum
- Owner: aqyuki
- License: mit
- Created: 2024-12-02T11:20:22.000Z (about 1 month ago)
- Default Branch: master
- Last Pushed: 2024-12-02T13:01:44.000Z (about 1 month ago)
- Last Synced: 2024-12-02T13:24:32.075Z (about 1 month ago)
- Topics: discord-bot, discordgo, golang
- Language: Go
- Homepage:
- Size: 3.91 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: License.txt
Awesome Lists containing this project
README
📖 README
>[!IMPORTANT]
> CUMは安定版ではありません.予告なしの破壊的変更が加えられたり、安定版では異なる動作を行う可能性が有ります.Goで実装されたDiscord Botです.のりと勢いで、機能が増えていくので実用性に関係なく、作者が面白いと思えば実装していきます.\
コントリビューションも大歓迎ですよ(チラ)## ✨ Features
このBotは以下の機能を持ちます.
#### VC Diff
Voice Chatへの入退出があった場合に、指定されたチャンネルにログを出力します.
#### 時報機能
指定された時刻に、指定されたチャンネルにメッセージを送信します.
#### リマインダー
指定時刻に、リマインドメッセージを指定チャンネルに送信します.
## 🔧 Development
### 🧰 Tools
このプロジェクトでは以下のツールを利用しています.必要に応じてインストールしてください.
- Go (>=1.23.0)
- Docker (>= 27.3.1)
- [Staticcheck](https://staticcheck.dev/)
- [GCI](https://github.com/daixiang0/gci)また、以下のツールは開発に必須ではないですが、導入することでより快適に開発を進めることが可能です.
- [Taskfile](https://taskfile.dev/)
- [gotestsum](https://github.com/gotestyourself/gotestsum)
- [octocov](https://github.com/k1LoW/octocov)### 🌟 開発の流れ
原則、以下の流れに従って開発を行ってください.なお、既存のIssueに取り組む際には1を飛ばしても構いません.
1. GitHubにIssueを作成する.
2. Issueに取り組む際には、自身をAssignしてください.
3. `master`ブランチからブランチを切る
4. コードを作成する.必要に応じてテストを追加してください.
5. `master`ブランチに対してPRを作成する.CIとレビューを通過すると`master`にマージされます.> [!IMPORTANT]
> 具体的なカバレッジ目標は存在しませんが、作成可能な場合は単体テストを作成してください.
> 単体テストを作成しやすいコードの設計を目指してください.### 🔖 リリース時
通常時は以下の流れに沿って、リリースを作成します.
1. Release PleaseによるPRを`master`にマージする
2. GitHub Actionsおよび、Release Pleaseによりリリースの作成とタグの作成が行われます.
3. GitHub Actionsにより、Docker ImageがGitHub Image RegistryにPushされます.>[!CAUTION]
> 以下の運用は、GitHub Actionによる自動リリースが不可能な場合の運用です.**(非推奨)**1. 必要なファイルを修正します.
2. GitHubのReleaseを新規に作成する.
3. タグを作成する.タグ名はセマンティックバージョニングに則ったものにする.
4. 以降通常リリース時の3が実行されます.### ➕ ライブラリ等の使用に関して
可能な限り、標準パッケージ → 順標準パッケージ → 独自実装 → ライブラリの順番で使用してください.
ライブラリを使用する場合には、最小限の依存で住むようにDIや抽象化を活用してください.## 📄 License
このプロジェクトはMITライセンス下で公開されています.詳細は、[License.txt](./License.txt)を確認してください.