Skip to content

Commit

Permalink
feat(docs): コントリビューター向けのドキュメント追加 (#95)
Browse files Browse the repository at this point in the history
* docs: add CONTRIBUTING.md

* docs(fix): Fix to branch-name type

* docs(fix): Remove branch-name rules

* docs(fix): add chore type

* docs(fix): add status badge

* refactor(docs): prettier & eslint

* feat(docs): fix docs

* feat(docs): add CONTRIBUTING.md link

* feat(docs): Fix About はらちょ

* feat(docs): Add Contributing Message

* Update CONTRIBUTING.md

Co-authored-by: Mikuroさいな <[email protected]>

* feat(docs): Fix test file name

* feat(docs): Fix codeblock

* Update CONTRIBUTING.md

Co-authored-by: Mikuroさいな <[email protected]>

* feat(docs): Fix Japanese

* Update CONTRIBUTING.md

Co-authored-by: Mikuroさいな <[email protected]>

* Update CONTRIBUTING.md

Co-authored-by: Mikuroさいな <[email protected]>

* Update CONTRIBUTING.md

Co-authored-by: Mikuroさいな <[email protected]>

* Update README.md

Co-authored-by: Mikuroさいな <[email protected]>

* feat(docs): Fix Japanese

* feat(docs): add commit

* feat(docs): add coding rules

* feat(docs): add coding rules

* refactor(docs): prettier

Co-authored-by: Mikuroさいな <[email protected]>
  • Loading branch information
meru and MikuroXina authored Mar 24, 2022
1 parent ddf92b7 commit f68c32c
Show file tree
Hide file tree
Showing 2 changed files with 143 additions and 1 deletion.
118 changes: 118 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
# OreOreBot2 への貢献

## このプロジェクトについて

限界開発鯖の Bot [【はらちょ】](https://github.com/approvers/OreOreBot) を discord.js +
TypeScript で作り直すプロジェクトです。

## 貢献の流れ

1. 当リポジトリをフォークしてください。
2. フォークしたリポジトリをクローンしてください。
3. ディレクトリを開き、ブランチをチェックアウトしてください。

```sh
git checkout -b <branch-name>
```

4. 開発を行い、その内容を GitHub へアップロードします。

```sh
git add <file-name>
git commit -m "hoge"
git push
```

5. 開発が終了したら GitHub から当リポジトリの `main` ブランチへ新規 pull request を作成してください。
6. 当プロジェクト コントリビューターによるレビュー・GitHub Actions によるテストなどが行われた後、マージが可能になります。

## コーティング規約

- ファイル名を `kabeb-case` にしてください。

## テストについて

新機能の追加や、既存の機能の変更などを行った際はテストを追加してください。

- [Jest](https://jestjs.io/ja/) を使用してテストしています。
- テストファイルの名前は `<file-name>.test.ts` とします。
- `<file-name>` は機能の処理を行うファイルと同じ名前にし、 `.test.ts` との競合を回避するため、`<file-name>``.` は含めないようにしてください。
- 必ず `service` ディレクトリに配置してください。

### テストの例

```typescript
test('use case of hukueki', async () => {
const responder = new Hukueki();
await responder.on(
'CREATE',
createMockMessage(
{
args: ['hukueki', 'こるく']
},
(message) => {
expect(message).toStrictEqual({
description:
'ねぇ、将来何してるだろうね\n' +
'こるくはしてないといいね\n' +
'困らないでよ'
});
return Promise.resolve();
}
)
);
});
```

詳しくは [Jest のドキュメント](https://jestjs.io/ja/docs) をご覧ください。

## コミットメッセージ

コミットメッセージを書く際は [**Conventional Commit**](https://conventionalcommits.org/ja/) に従ってください。

> Conventional Commits の仕様はコミットメッセージのための軽量の規約です。 明示的なコミット履歴を作成するための簡単なルールを提供します。この規則に従うことで自動化ツールの導入を簡単にします。 コミットメッセージで機能追加・修正・破壊的変更などを説明することで、この規約は SemVer と協調動作します。
> 引用: [Conventional Commits](https://conventionalcommits.org/ja/)
コミットメッセージは次のような形にする必要があります。

```
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
```

`<type>` は、OreOreBot2 を使用する利用者や開発者に意図を伝えるために以下に記載するそれぞれの型を指定する必要があります。

|| 要素 |
| ---------- | ------------------------------------------------------------------------------ |
| `fix` | この型を持つコミットはコードベースのバグにパッチを当てます。 |
| `feat` | この型を持つコミットはコードベースに新しい機能を追加します。 |
| `build` | この型を持つコミットはプログラムをコンパイル、ビルドする部分の変更を行います。 |
| `ci` | この型を持つコミットは GitHub Actions に関する変更を行います。 |
| `docs` | この型を持つコミットはドキュメントなどの変更を行います。 |
| `refactor` | この型を持つコミットはコードベースのリファクタリングを行います。 |
| `chore` | この型を持つコミットはファイル整理や依存関係の更新などを行います。 |

`BREAKING CHANGE` とフッターにかかれているか型/スコープの直後に `!` が追加されているコミットは仕様の破壊的変更を意味します。 (Semantic Versioning における `MAJOR` に相当します)

また、 `BREAKING CHANGE` は任意の型のコミットに含めることも可能です。

### 例 (引用: [Conventional Commits](https://conventionalcommits.org/ja))

#### タイトルおよび破壊的変更のフッターを持つコミットメッセージ

```
feat: allow provided config object to extend other configs
BREAKING CHANGE: `extends` key in config file is now used for extending other config files
```

#### 本文を持たないコミットメッセージ

```
docs: correct spelling of CHANGELOG
```

詳しくは [Conventional Commits](https://conventionalcommits.org/) を参照してください。
26 changes: 25 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# OreOreBot2 (新生はらちょ)

[![Release](https://github.com/approvers/OreOreBot2/actions/workflows/release.yml/badge.svg)](https://github.com/approvers/OreOreBot2/actions/workflows/release.yml)
[![run codeql analysis](https://github.com/approvers/OreOreBot2/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/approvers/OreOreBot2/actions/workflows/codeql-analysis.yml)
[![run eslint](https://github.com/approvers/OreOreBot2/actions/workflows/eslint.yml/badge.svg)](https://github.com/approvers/OreOreBot2/actions/workflows/eslint.yml)
[![run jest](https://github.com/approvers/OreOreBot2/actions/workflows/test.yml/badge.svg)](https://github.com/approvers/OreOreBot2/actions/workflows/test.yml)
[![run prettier](https://github.com/approvers/OreOreBot2/actions/workflows/prettier.yml/badge.svg)](https://github.com/approvers/OreOreBot2/actions/workflows/prettier.yml)

---

限界開発鯖を代表する BOT [はらちょ](https://github.com/approvers/OreOreBot) を TypeScript+discord.js で作り直し。

オレオレ BOT です。別に詐欺とかはしません。
Expand All @@ -15,7 +23,23 @@
- Go での再実装も計画されましたが、結局完了することはなく、永久凍結することになります。
- 2021/12/19, discord.py の開発停止や Discord API v6, v7 の廃止による **はらちょの Gateway API 切断問題(2022 年問題)(クソデカ主語)** を解決すべく、新生はらちょが作られることになりました。
- [初代はらちょぶっ殺しプロジェクト](https://github.com/approvers/OreOreBot2/milestone/1) の開始です。
- これも Go と同じく、途中で永久凍結するところでしたが、 [](https://github.com/YukiYuigishi) ~~容疑者~~ が初代はらちょを殺した罪で死刑が確定したことで、作り直しが加速することになり、 2022/02/27 ついに最初の [初代はらちょぶっ殺しプロジェクト](https://github.com/approvers/OreOreBot2/milestone/1) が終了しました。
- これも Go と同じく、途中で永久凍結するところでしたが、 [](https://github.com/YukiYuigishi) が初代はらちょを殺した罪で死刑が確定したことで、作り直しが加速することになり、 2022/02/27 ついに最初の [初代はらちょぶっ殺しプロジェクト](https://github.com/approvers/OreOreBot2/milestone/1) が終了しました。

## 機能の追加・改善

機能の追加や改善などがありましたら [Issue](https://github.com/approvers/OreOreBot2/issues/new) から新規 Issue を作成してください。

もちろん [自分で作成して PR を送ってくれても、いいんですよ (ちらっ)](./CONTRIBUTING.md)

限界開発鯖だし、はらちょなので、どんなふざけた機能でも大歓迎です。

## 貢献

はらちょの開発への参加は大歓迎です!

貢献に関する規定などは [CONTRIBUTING.md](./CONTRIBUTING.md) をご覧ください。

(開発に関する質問は [Issue](https://github.com/approvers/OreOreBot2/issues) か 限界開発鯖内 プロジェクトチャンネル [`#新生はらちょ`](https://discordapp.com/channels/683939861539192860/947208529561927710) までどうぞ。)

## 環境構築

Expand Down

0 comments on commit f68c32c

Please sign in to comment.