mcpField
C
code-generation-template

code-generation-template

github.com/aj-geddes開発373534 回インストール34 週間前に更新
リポジトリ

code-generation-template について

スキャフォールディングや反復的なコードを自動生成する開発者向けのスキルです。テンプレート、AST技術、スキーマに基づく生成、CLIジェネレーターに加え、検証と保守性の指針を扱います。

主な機能

  1. 01テンプレートによるコード生成
  2. 02ASTベースの生成手法
  3. 03プロジェクトとコンポーネントのスキャフォールディング
  4. 04APIクライアントとモデルの生成
  5. 05カスタムCLIジェネレーターの指針
  6. 06検証と保守の実践

活用シーン

  1. 01新規プロジェクトやコンポーネントの雛形作成
  2. 02パターンに沿ったCRUDコード生成
  3. 03OpenAPI仕様からのAPIクライアント作成
  4. 04JSON Schemaからの型生成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill code-generation-template

インストール後、Claude Code で/code-generation-templateを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
ast-based-code-generation.md
database-model-generation.md
graphql-code-generation.md
openapi-client-generation.md
plopjs-generator.md
project-scaffolding.md
template-engines.md
scripts/
validate-api.sh
templates/
api-scaffold.yaml

詳細

コード生成とテンプレート

目次

概要

生産性と一貫性を高めるための、テンプレートエンジン、AST 操作、コードのスキャフォールディング、定型コードの自動生成など、コード生成の手法を包括的に解説します。

使用する場面

  • 新しいプロジェクトやコンポーネントのスキャフォールディング
  • 繰り返し使う定型コードの生成
  • CRUD 操作の自動生成
  • OpenAPI 仕様からの API クライアント生成
  • テンプレートを使ったコードの構築
  • スキーマからのデータベースモデル作成
  • JSON Schema からの TypeScript 型の生成
  • カスタム CLI ジェネレーターの構築

クイックスタート

最小限の実行可能な例:

// templates/component.hbs
import React from 'react';

export interface {{pascalCase name}}Props {
  {{#each props}}
  {{this.name}}{{#if this.optional}}?{{/if}}: {{this.type}};
  {{/each}}
}

export const {{pascalCase name}}: React.FC<{{pascalCase name}}Props> = ({
  {{#each props}}{{this.name}},{{/each}}
}) => {
  return (
    <div className="{{kebabCase name}}">
      {/* Component implementation */}
    </div>
  );
};

リファレンスガイド

詳細な実装については、references/ ディレクトリを参照してください:

ガイド内容
テンプレートエンジンテンプレートエンジン
AST ベースのコード生成AST ベースのコード生成
プロジェクトのスキャフォールディングプロジェクトのスキャフォールディング
OpenAPI クライアントの生成OpenAPI クライアントの生成
データベースモデルの生成データベースモデルの生成
GraphQL コード生成GraphQL コード生成
Plop.js ジェネレーターPlop.js ジェネレーター

ベストプラクティス

✅ 推奨事項
  • 繰り返し使うコードパターンにはテンプレートを使用する
  • スキーマから TypeScript 型を生成する
  • 生成コードにテストを含める
  • テンプレートでプロジェクトの規約に従う
  • 生成コードの説明コメントを追加する
  • テンプレートをバージョン管理する
  • テンプレートを設定可能にする
  • コードとともにドキュメントも生成する
  • 生成前に入力を検証する
  • 一貫した命名規則を使用する
  • テンプレートはシンプルで保守しやすい状態に保つ
  • 生成を簡単に行える CLI を用意する
❌ 禁止事項
  • 過剰に生成する(不要な複雑さを避ける)
  • 保守が難しいコードを生成する
  • 生成コードの検証を忘れる
  • テンプレートに値をハードコードする
  • ドキュメントなしでコードを生成する
  • 一度限りの用途にジェネレーターを作成する
  • テンプレートにビジネスロジックを混在させる
  • フォーマットせずにコードを生成する
  • ジェネレーターのエラー処理を省略する
  • 複雑すぎるテンプレートを作成する

コメント