開発中の機能
コード管理
設定ファイル

設定ファイル

コード管理では、TypeScriptで設定を記述します。SDKが提供する関数を使うことで、型安全に設定を定義できます。

リポジトリ構造

ファイル構造に厳密な規約はありません。以下は一般的な構成例です。

種類別の管理

my-project/
├── .github/                       # CI/CDの設定
├── basemachina.config.ts          # プロジェクト設定
├── package.json
├── tsconfig.json
├── actions/                       # アクション
│   ├── get-users.ts
│   ├── list-users.ts
│   └── js-action-codes/
│       └── get-user.ts            # JavaScriptアクションのコード
├── views/                         # ビュー
│   └── user-list/
│       └── index.tsx
└── shared/
    └── params.ts                  # 共通パラメーター定義

機能別の管理

my-project/
├── basemachina.config.ts
├── features/
│   └── user-management/           # ユーザー管理機能
│       ├── actions/
│       │   └── get-users.ts
│       └── views/
│           └── user-list/
│               └── index.tsx

モノレポ構成にも対応しており、お客さんのサービスのリポジトリにベースマキナの設定を同居させることも可能です。

SDK関数

設定ファイルでは、以下のSDK関数を使用します。

  • defineConfig - プロジェクト全体の設定を定義する
  • defineAction - アクションを定義する
  • readFile - 外部ファイルの内容を読み込む

tsconfig.json

ダウンロードしたプロジェクトにはtsconfig.jsonが含まれており、SDKの設定を拡張しています。通常は変更不要です。

{
  "extends": "@basemachina/sdk/tsconfig.json"
}

この設定により、アクションやビューのコードで@basemachina/action@basemachina/viewの型定義が使用可能になります。