Tip
このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください
プラグイン開発の概要
NocoBaseはマイクロカーネルアーキテクチャを採用しており、コアはプラグインのライフサイクル管理、依存関係管理、そして基本的な機能のカプセル化のみを担当しています。すべてのビジネス機能はプラグインとして提供されます。そのため、プラグインの構成、ライフサイクル、管理方法を理解することが、NocoBaseをカスタマイズする上での 最初のステップとなります。
コアコンセプト
- プラグアンドプレイ:必要に応じてプラグインをインストール、有効化、または無効化できます。コードを修正することなく、ビジネス機能を柔軟に組み合わせることが可能です。
- フルスタック統合:プラグインは通常、サーバーサイドとクライアントサイドの両方の実装を含んでおり、データロジックとUIインタラクションの一貫性を保証します。
プラグインの基本構造
各プラグインは独立したnpmパッケージであり、通常、以下のようなディレクトリ構造を持っています。
ディレクトリの慣例と読み込み順序
NocoBaseは、デフォルトで以下のディレクトリをスキャンしてプラグインを読み込みます。
packages/plugins:ローカル開発用のプラグインディレクトリで、 リアルタイムコンパイルとデバッグをサポートしています。storage/plugins:コンパイル済みのプラグイン(商用版やサードパーティ製プラグインなど)が格納されます。
プラグインのライフサイクルと状態
プラグインは通常、以下のフェーズを経ます。
- 作成(create):CLI を使ってプラグインテンプレートを作成します。
- プル(pull):プラグインパッケージをローカルにダウンロードしますが、まだデータベースには書き込まれていません。
- 有効化(enable):初回有効化時に「登録 + 初期化」が実行されます。再度有効化する際は、ロジックのみが読み込まれます。
- 無効化(disable):プラグインの実行を停止します。
- 削除(remove):システムからプラグインを完全に削除します。
Tip
pullはプラグインパッケージのダウンロードのみを担当し、実際のインストールプロセスは初回enable時にトリガーされます。- プラグインが
pullされただけで有効化されていない場合、そのプラグインは読み込まれません。
CLIコマンド例
プラグイン管理画面
ブ ラウザでプラグインマネージャーにアクセスすると、プラグインを直感的に表示・管理できます。
デフォルトURL: http://localhost:13000/admin/settings/plugin-manager


