CivichatのChatbot部分の機能をもったリポジトリです。
これらは過去には2つのリポジトリが分かれていました。(Civichat/Civichat_Kumamoto と Civichat/civichat-kumamoto-for-twitter )
しかし、両リポジトリ間での重複がとても大きかったので、Typescriptへの移行に伴って、実装を統合しています。
AWS->Heroku->AWSとデプロイ先を変えていったため、各サービスの設定ファイルが残っています。
LIFFに関してはCivichat/Civichat-chatbot-frontを参照してください。
-
原則 Git-flow に従います。
-
ただし、
release
ブランチは原則使わない方向で考えています(@yuseiito)- これは、すでに元記事が公開されてから10年以上経過しているGit-flowは継続的デリバリーを前提としておらず(発案者もそれ言及しています)、今となってはただ複雑にしている道具になっているからです
- リリースは、
develop
からmain
へのマージとmain
上でのtagによって表現できます。
-
新機能の開発を進めるときは、
develop
から新しいブランチfeature/#[issue_number]-some-descriptive-name
を生やしてください。- ケバブケースにしてください
- 検索しにくいのでできるだけissueを生やすと良いです。
- issueを生やさない場合は
feature/some-descriptive-name
な感じの名前になります。- とても短い、小規模な変更等に限って使うのがいいです
- issueを生やさない場合は
-
開発が終わったら、
develop
に対してPull Requestしてください。- Pull Requestは、エンジニア1人以上のコードレビューを受けてmergeできます。
-
現在は株式会社Civichatのメンバーのみがマージすることができます。
- TypeScript
- AWS AppRunner
- PostgreSQL
- LINE Developer Account
- AWS Account
-
env
.env.sample
を参考に作成する -
LINEBot ngrokを使い、ローカルでLINEBotを作成します
npm install
npm run build:dev
別タブ
node dist/index.js
別タブ
ngrok http 5000
- データベース
docker-compose up
- ngrokを実行して表示されたURLに
/line
をパスに追加してLINE Developer Consoleで登録してください。- この際にWebhookも有効にしてください。