ゲーム感覚で習慣化を楽しめるサービスRhythmateのバックエンドです。
フロントエンドのリポジトリは https://github.com/taga3s/Rhythmate-Web へ
- 2024/02 - 2024/05
-
言語
- TypeScript
-
フレームワーク・ライブラリ
- Express
- Prisma
-
DB
- PostgreSQL
- Firebase Storage
-
ツール
- biome
- jest
-
PaaS
- koyeb
-
その他
- Gemini API
- micro cms
- パッケージ管理に
pnpm
を利用するので、有効化します。
$ corepack enable pnpm
node_modules
をインストールする。
$ pnpm i
.env.example
をコピーして.env
配置する。(値は管理人に尋ねること。)
cp .env.example .env
http://localhost:3000
で立ち上がります。
$ pnpm run start:watch
ヘルスチェックのエンドポイントを叩き、サーバー及び DB が起動しているか確認します。
$ curl http://localhost:3000/v1/health
{"status":"ok","message":"Successfully connected to db"}
docker がインストールされていることを前提とします。
- コンテナを起動する。
$ make run
もしくは
$ docker compose up -d
- コンテナに接続し、ログインする
$ make it-db
$ psql -U rhyth_user -d rhyth_db
- マイグレーションを行いたい時
$ pnpm run migrate
- DB をリセットして、マイグレーションを行いたい時
$ pnpm run migrate:reset
- prisma studio を立ち上げたい時
$ pnpm run studio