com.byeolnaerim:webflux-fe-dev-assistant
バックエンドとフロントを同時に開発し、同じURL・DTO・API契約を二度書くボトルネックを減らすために、Spring WebFluxとMongoDBソースからSwagger、AsyncAPI、ハンドラ骨格とフィールド列挙を生成するローカル開発自動化ライブラリです。
バックエンドで既に作成したものを再作成しない
webflux-fe-dev-assistantはバックエンドとフロントを一緒に開発する際に発生する反復作業を減らすために作成されたローカル開発自動化ライブラリです。RouterFunction、ハンドラ、DTOとエンティティソースに既存の情報を読み取り、Swagger/OpenAPI、RSocket AsyncAPI、ハンドラの骨格とMongoDBフィールドの列挙型を生成します。
核心は新しいruntime抽象を追加するのではなく、バックエンドに一度書いたAPI契約とタイプをフロントで再度書かないように接続することです。ルーターにハンドラリファレンスを最初に記述したときに必要な骨格を作成し、文字列フィールド名もソースから列挙型として生成して反復とタイプミスを減らします。
API契約自動化
RouterFunctionとハンドラ・DTOを分析してREST用SwaggerとRSocket用AsyncAPIを生成します。
反復コード生成
ルーターに宣言した参照を基にハンドラクラスとメソッドの骨格を生成・補正します。
文字列除去
Mongoエンティティフィールドとコレクション名を列挙型にしてクエリの生文字列とタイプミスを減らします。
自動化の基準
真実のソース
バックエンドソースをAPI文書とフロント生成コードの基準として使用します。
開発時間
production runtimeを複雑にせず、local watcherが確認できるファイルを生成します。
プロジェクトの慣習
すべての形を推測するのではなく、実際のプロジェクトで使用されるコードパターンを予測可能に分析します。