若干の不安を覚える Directus の初期フォルダ構成
Directus をインストールした人がまず驚くのは、構成フォルダの少なさだろう。あまりに少なすぎて初期セットアップに失敗したのではないかと思うくらいなのだ。
例えば同じ Node.js ベースの strapi のような CMS では以下のような感じである。これでも結構シンプルな部類なのではと思う。
.
├── build
├── config
├── database
│ └── migrations
├── public
│ └── uploads
├── src
│ ├── admin
│ ├── api
│ └── extensions
└── types
└── generated
インストールベースな CMS でよくあるのは、ソースフォルダとコンフィグ系のフォルダ、型定義などが含まれたコードが含まれている構成だと思う。というのもきちんとフォルダやファイルがきちんと配置されていないとどこをどうカスタマイズしていいかわからないからだ。
Directus のフォルダ構成
Docker 版ではなく、npm 版でも同様なのだが、例えば以下のようなコマンドでプロジェクトを新規に作成したとする。
$ npm init directus-project@latest my-app
すると、以下のようなフォルダがプロジェクトフォルダ以下に生成される。ほかにも package.json
など最低限のファイルは存在するものの、本当に何もない。
.
├── extensions // 最初は空
└── uploads // 最初は空
extensions
というのは Directus のマーケットプレイスにて拡張機能をインストールするときの保存場所だ。当然なにも入れていない場合は空である。uploads
も S3 にアップロードする想定であれば、空っぽのままだろう。
そんな感じなので、プレーンな状態で使うのであればほとんど開発者側がすることはないといっていい。もちろん、拡張機能を作っていくことで機能を拡張していくことはできる。