https://github.com/traptitech/knoq
進捗部屋・イベント管理システム
https://github.com/traptitech/knoq
go golang hacktoberfest
Last synced: about 1 year ago
JSON representation
進捗部屋・イベント管理システム
- Host: GitHub
- URL: https://github.com/traptitech/knoq
- Owner: traPtitech
- Created: 2020-04-05T08:57:30.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2025-04-08T10:40:34.000Z (about 1 year ago)
- Last Synced: 2025-04-09T21:51:01.252Z (about 1 year ago)
- Topics: go, golang, hacktoberfest
- Language: Go
- Homepage:
- Size: 4.62 MB
- Stars: 8
- Watchers: 9
- Forks: 2
- Open Issues: 39
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# knoQ
イベント管理システム
## docs
[wiki](https://github.com/traPtitech/knoQ/wiki)
## 開発
### 必要要件
- go
- make
- docker
- docker-compose
### サーバーの起動
```bash
docker compose up --build
```
`http://localhost:3000`に knoQ が起動します。
`http://localhost:8000`に phpmyadmin が起動します。
現在、ログインできるのは traP ユーザーのみです。
### 環境変数の設定・追加のファイル
knoQ の全ての機能を動作させるためには、追加の情報が必要です。
| 名前 | 種類 | デフォルト | 説明 |
|---------------------|------|----------------------------------------|------------------------------------------------|
| SESSION_KEY | 環境変数 | `random32wordsXXXXXXXXXXXXXXXXXXX` | session を暗号化するもの |
| TRAQ_CALENDARID | 環境変数 | | 進捗部屋の提供元(公開されている google calendar の id なら何でもいい) |
| CLIENT_ID | 環境変数 | `d1hDlIRNfCBerXdZkH1VR8lJwCBpIuMgiv42` | 認証に必要 |
| WEBHOOK_ID | 環境変数 | | Bot 情報 |
| WEBHOOK_SECRET | 環境変数 | | Bot 情報 |
| CHANNEL_ID | 環境変数 | | Bot の送信先チャンネル (deprecated) |
| DAILY_CHANNEL_ID | 環境変数 | | Bot が毎日定時に投稿する先のチャンネル |
| ACTIVITY_CHANNEL_ID | 環境変数 | | Bot が都度送信するチャンネル |
| TOKEN_KEY | 環境変数 | `random32wordsXXXXXXXXXXXXXXXXXXX` | Token を暗号化する。長さ 32 文字のランダム文字列。存在しない場合はエラー。 |
| KNOQ_VERSION | 環境変数 | UNKNOWN | knoQ のバージョン (github actions でイメージ作成時に指定) |
| KNOQ_REVISION | 環境変数 | UNKNOWN | git の sha1 (github actions でイメージ作成時に指定) |
| DEVELOPMENT | 環境変数 | | 開発時かどうか |
| TRAQ_ACCESS_TOKEN | 環境変数 | | traQ へのアクセストークン |
| service.json | ファイル | 空のファイル | google calendar api に必要(権限は必要なし) |
### テスト
```bash
go test ./...
```
### コード生成
```bash
go generate ./...
```
## コードフォーマット
```bash
golangci-lint run --fix ./...
```