プログラム採点システムのAPIサーバーです。
- Framework:
- Hono - Web application framework
- Open API:
- Zod OpenAPI Hono - Define API schemas with Zod and validate values and types
- Scalar API Reference - Generate API reference documentation from OpenAPI schemas
- Database:
- Language:
- TypeScript - JavaScript with syntax for types
- Runtime, Package Manager, and Task Runner:
ディレクトリ構成などは、ARCHITECTURE.md を参照してください。
Warning
Dev Containerにより開発環境を構築した場合は、以下はすでにインストールされています。
それぞれ必要なバージョンは.tool-versions
を参照してください。
Tip
mise 等を利用している場合は、mise install
によって上記のツールをインストールできます。
.env.example
をコピーして .env
ファイルを作成してください。
設定する環境変数は次の通りです。
DATABASE_URL
: データベースのURL。SQLite の DB ファイルのパスを指定してください(例:file:./dev.db
)。詳しくは Prismaのドキュメント を参照してください。
次のコマンドで依存関係をインストールします。
bun install
次のコマンドでDBのマイグレーションと初期データの投入を行います。
bun run prisma migrate dev && bun run prisma db seed
Tip
デバッグ用に、最初からいくつかのフェイクデータを投入する場合は、次のコマンドを実行してください。
bun run prisma db seed -- --fake
次のコマンドで開発サーバーを起動します。backend
ディレクトリに移動してから実行してください。
bun run dev
http://localhost:3000
にてAPIサーバーが起動します。
また、http://localhost:3000/api/docs
にてAPIリファレンスが表示されます。
次のコマンドでテストを実行します。
bun run test
次のコマンドでバックエンドのビルドを行います。
bun run build
次のコマンドでバックエンドのコードをESLintでリントします。
bun run lint:write
Note
自動修正しない場合は次のコマンドを実行してください。
bun run lint
次のコマンドでバックエンドのコードをPrettierでフォーマットします。
bun run format:write
Note
フォーマットに従っているかの確認だけを行い、自動修正しない場合は次のコマンドを実行してください。
bun run format