$mol
検索
⌘ K
ドキュメント
プレイグラウンド
比較
エコシステム
概要
JA
プロジェクト構成
Getting Started
はじめに
メンタルモデル
はじめかた
TypeScript から view.tree へ
プロジェクト構成
ツール
Essentials
インストール
ビュー
状態とリアクティビティ
ルーティング
レンダリング
テスト
デプロイ
トラブルシューティング
Data
データ取得
データスキーマ
Giper Baza
More
ショーケース
React、Vue、Svelte から
クックブック
Advanced
プラグイン
モジュールのメタデータ
オフライン
ゴーストビュー
About
よくある質問
チーム
リリース
API
$mol_button_major
$mol_button_minor
$mol_string
$mol_number
$mol_text
$mol_paragraph
$mol_list
$mol_row
$mol_link
$mol_check
$mol_switch
$mol_select
$mol_scroll
$mol_page
$mol_pick
プロジェクト構成
$mol のプロジェクトには入れ子の四つの階層があります。クローンした
ワークスペース
、その中の
パッケージ
、パッケージの中の
モジュール
、そしてモジュールの中の
ファイル
です。この配置は実用的な問いに答えます。新しいプロジェクトをどこに置くのか、その履歴は誰のものなのか。ビルドがすることのほとんどは、ここから導かれます。
mam/
ワークスペース — クローンした MAM
├──
.meta.tree
レジストリ: どのパッケージがどのリポジトリから来るか
├──
mol/
パッケージ — フレームワーク本体、専用の git リポジトリ
└──
my/
パッケージ — あなたのもの、専用の git リポジトリ
├──
.gitattributes
ビルド済みバイナリを壊さずに保つ
├──
my.meta.tree
あなた自身のプロジェクトのレジストリ
└──
hello/
プロジェクト — モジュールであり、専用の git リポジトリ
├──
index.html
エントリポイント(アプリのモジュールのみ)
├──
hello.view.tree
マークアップ
└──
form/
サブモジュール — $my_hello_form
このページでは一覧の各行に、なぜそこにあるのかを示すクエスチョンマークが付いています。下の各節は同じことを詳しく説明します。
プロジェクトを始める
五つの手順。繰り返すのは最初の一つだけで、後半の三つはスキャフォルダに任せられます。
1. ワークスペースを一度クローンする。
これから書くものはすべてこの中に置かれます。
1
git
clone
https://github.com/hyoo-ru/mam.git
2
cd
mam
2. 自分のパッケージを作る。
短い名前のフォルダ(あなたの名前、会社名、ハンドル)と、専用の git リポジトリ。これから始めるすべてのプロジェクトの入れ物です。
1
mkdir
my
2
cd
my
3
git
init
コードを置いている場所へ、公開でも非公開でも構わないので上げてください。ついでに
*
-
text
の一行だけを書いた
.
gitattributes
を添えます。理由は下のパッケージの節にあります。
3. レジストリを追加する。
my
/
my
.
meta
.
tree
はパッケージ内のプロジェクト一覧です。最初は空で、プロジェクトごとに一行ずつ増えます。
1
pack hello git
\https://github.com/you/hello.git
MAM はこれを、一つ上のワークスペースの
.
meta
.
tree
とまったく同じように読みます。
my
/
をクローンした同僚には、プロジェクトも一緒に届きます。
4. プロジェクトを、専用のリポジトリとともに作る。
フォルダがそのままコンポーネントです。
my
/hello/
は
$my_hello
であり、その履歴はプロジェクトのものであって、パッケージのものでも $mol のものでもありません。
1
mkdir
hello
2
cd
hello
3
git
init
この切り分けこそが配置の狙いです。
my
/hello/
でのコミットは
hello
リポジトリへ入り、
my
にも
mol
にも決して入りません。
5. 登録する。
手順 3 の
pack
行を
my
/
my
.
meta
.
tree
に加えれば、新しくチェックアウトしたパッケージが名前でプロジェクトを取ってきます。
手順 2 の後ならいつでも、
スキャフォルダ
が動くモジュールを書いてくれます。
1
npx
create
-
view
-
tree
-
lsp
my
/
hello
ワークスペース
MAM は一度クローンして、その中で作業します。依存がコピーされてくるフォルダではありません。どのパッケージもそこに独立した git のチェックアウトとして、履歴つきで置かれているので、フレームワークのソースを読み、そこに
debugger
を差し込み、同じ作業コピーからプルリクエストを出せます。
ルートの
.
meta
.
tree
が、それを成り立たせているレジストリです。
1
pack mol git
\https://github.com/hyoo-ru/mam_mol.git
2
pack hyoo git
\https://github.com/hyoo-ru/mam_hyoo.git
3
pack lib git
\https://github.com/hyoo-ru/mam_lib.git
ビルドが
$mol_view
に出会ったとき
mol
/
フォルダがまだ無ければ、ここで名前を引いてリポジトリをクローンします。何もベンダリングされず、何も平坦化されません。
パッケージ
トップレベルのフォルダがパッケージであり、パッケージは git リポジトリです。自分のパッケージは、単に自分で名前を付けたフォルダにすぎません。ローカルにあるうちは登録は要らず、名前で取得したくなった日に
pack
の行が要ります。
パッケージは入れ子になります。パッケージは自分の中のフォルダのために独自の
pack
宣言を持てて、MAM はそれをそのパッケージを収めることになるフォルダの
meta
.
tree
から読みます。このサイトは
bog
/smalljs/
にあり、それ自体が 1 つのリポジトリで、
bog
/
bog
.
meta
.
tree
に載っています。そしてその
bog
/
bog
.
meta
.
tree
は、ルートの
.
meta
.
tree
に載っている
bog
/
のチェックアウトの中にあります。
どのパッケージにも要るファイル
デプロイされるパッケージには、1 行だけの
.
gitattributes
が要ります。
1
*
-
text
GitHub でこのページを編集
役に立ちましたか?
はい
いいえ
前へ
TypeScript から view.tree へ
次へ
ツール
このページの内容
プロジェクトを始める
ワークスペース
パッケージ
どのパッケージにも要るファイル
モジュール
モジュールの中のファイル
生成されたフォルダはハイフンで始まる
meta.tree が実際にしていること
次へ
Type to search the documentation.