Skip to content

praha-inc/praha-challenge-ddd-template

Folders and files

NameName
Last commit message
Last commit date
Mar 17, 2025
May 31, 2024
Jun 3, 2024
May 21, 2024
May 21, 2024
May 22, 2024
Jun 3, 2024
May 28, 2024
May 22, 2024
May 22, 2024
Sep 3, 2024
Mar 27, 2025
Mar 27, 2025
May 20, 2024
May 27, 2024
May 27, 2024
May 27, 2024

Repository files navigation

プラハチャレンジDDD課題テンプレート

環境構築が大変という方のために、ある程度オニオンアーキテクチャに準拠する形でサンプルアプリケーション(TODOリスト)を用意しました。ここから拡張していく形で課題に取り組んでください。

環境構築

  • pnpm installで依存関係をインストールしてください。
  • .env.exampleをコピーして、.envを作成してください。
  • pnpm run migration:applyでDBのマイグレーションを実行してください。
    • docker compose upでDBのコンテナーを起動しておく必要があります。

開発

  • pnpm run devでAPIサーバーを起動できます。
  • pnpm run lintでBiomeによる静的解析とフォーマットを実行できます。
  • pnpm run buildでビルド、pnpm run startでビルドしたものを起動できます。
  • pnpm run testでテストを実行できます。
  • ./src/libs/drizzle/schema.tsでデータベースのテーブル定義を変更できます。
    • 変更したテーブル定義をDBに反映するには、pnpm run migration:generateでマイグレーションファイルを生成し、pnpm run migration:applyでマイグレーションを実行してください。
  • DBのマイグレーションファイル(./src/libs/drizzle/migrations/*)を削除したい場合は、pnpm run migration:dropで削除してください。
    • drizzle-kitがマイグレーションの整合性を取れなくなるため、手作業で削除しないでください。

注意

このリポジトリはあくまで環境構築の手間を省くためのリポジトリです。Value Objectがない・Nominal Typingができていない(Taskと同じプロパティを持つクラスだと型が等価になってしまう)などなど、厳密な実装は全然できておりません。あるべき姿を模索しつつ実装を進めてください!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published