はじめに
この記事は、前回の記事を見ていることを前提に解説します。まだご覧になっていない方は先に前回の記事をご覧ください。
Fractalでスタイルガイドを作ってみる #1 ― インストールから始め方まで
現時点で、プロジェクトフォルダ配下は以下のような構成になっていると思います。
※node_modulesフォルダ配下は省略します。
fractalTest/ ├─ node_modules/ ├─ package-lock.json └─ package.json方法2:0からプロジェクトを作成する
プロジェクト構造を設定する
まず、コンポーネントやドキュメントのページを作成するためのディレクトリを作成します。
任意の名前で任意の場所にディレクトリを作成することができます。
今回は各々、「components」と「docs」と命名し、それらをまとめた「src」フォルダをプロジェクトフォルダ配下に作成します。
fractalTest/ ├─ node_modules/ ├─ src/ │ ├─ components/ │ └─ docs/ ├─ package-lock.json └─ package.jsonFractalが認識できないものはすべて無視されますが、ビルドファイルやREADMEなど、好きなものをプロジェクトディレクトリ内に置くことができます。
Fractalインスタンスの作成と設定
次に、Fractalの新しいインスタンスを作成し、プロジェクトの構造やその他の情報をオプションで設定します。
一般に、プロジェクトディレクトリのルートにfractal.config.jsを作成し、そこにオプションの設定を記述します。
以前は設定ファイルの名前はデフォルトでfractal.jsでしたが、v1.3.0でfractal.config.jsに変更されました。
fractalTest/ ├─ node_modules/ ├─ src/ │ ├─ components/ │ └─ docs/ ├─ fractal.config.js ├─ package-lock.json └─ package.jsonfractal.config.jsに設定を記述する
fractal.config.jsの必要最低限の設定は次のようなものになります。
特にこだわりがなければ、以下のコードをそのまま使用しても良いでしょう。
'use strict';/* Fractalのインスタンスを作成し、必要に応じて他の場所で使用するためにエクスポートします */const fractal = module.exports = require('@frctl/fractal').create();/* プロジェクトのタイトルを設定します */fractal.set('project.title', 'Component Library');/* コンポーネントの場所を指定します */fractal.components.set('path', __dirname + '/src/components');/* ドキュメントの場所を指定します */fractal.docs.set('path', __dirname + '/src/docs');Project Settings | Fractal(新しいタブで開く)
コンポーネントを作成する
コンポーネントは1つのビューテンプレートファイルで構成されるシンプルなものから、複雑なものまであります。
ここでは、button.hbsというファイルをcomponentsディレクトリに追加することで、最もシンプルなコンポーネントを作成します。
<a href="" class="button">ボタン</a>ドキュメントのインデックスページを作成する
次に、ドキュメントディレクトリ(今回は、src/docs)にインデックスページとなるMarkdownファイルindex.mdを追加します。
---title: Component Library---**○○株式会社**のWebサイトで使用するコンポーネントライブラリです。現時点で、プロジェクトフォルダ配下は以下のような構成になっていると思います。
※node_modulesフォルダ配下は省略します。
fractalTest/ ├─ node_modules/ ├─ src/ │ ├─ components/ │ │ └─ button.hbs │ └─ docs/ │ └─ index.md ├─ fractal.config.js ├─ package-lock.json └─ package.json開発サーバーを起動する
あとは開発用サーバーを起動し、コンポーネントライブラリを見るだけです。
ターミナルを開いて、プロジェクトディレクトリのルートにいることを確認した上で、以下のコマンドを実行します。
fractal start --sync--syncオプションを使うことで、FractalはBrowserSyncを使ってファイルシステムの変更を監視し、ファイルを更新したときにページをリフレッシュすることができます。
コマンドを実行するとターミナルに以下のようなものが表示されます。
「Local URL」の右側のURLにアクセスすると、コンポーネントライブラリのページを見ることができます。

今回はここまでになります。より複雑なコンポーネントの作り方は、Fractalの公式ドキュメントを参照してください。
この記事は役に立ちましたか?