プロジェクトと .restorm ファイル
Restorm のプロジェクトは お使いのディスク上 にあります。 リモートのワークスペースも独自の同期機構もありません。 ファイルを開き、保存し、コミットするだけです。
2 つの保存モード
Section titled “2 つの保存モード”単一ファイル .restorm
Section titled “単一ファイル .restorm”既定のモードです(ファイル ▸ 新規作成、続いて 名前を付けて保存)。
プロジェクト全体が 1 つのファイルに収まり、既定の形式は YAML です。
シリアライズ形式は他に json と json5 も選べます。
フォルダーモード
Section titled “フォルダーモード”ファイル ▸ フォルダーを開く を使います。 プロジェクトはディスク上のツリーに分解されるため、大きなプロジェクトでは差分がずっと細かくなります。
- ルートに設定ファイル
restorm.confが置かれ、形式(format: yaml | json | json5)だけを保持します。 - ディレクトリごとにインデックスファイル(
index.yaml、index.jsonなど)が置かれます。 - フォルダーとファイルは
<index> - <name>という名前になります。 インデックスは同階層の項目数に合わせてゼロ埋めされるため、画面上の順序がディスク上の順序と一致します。 使用できない文字(<>:"/\|?*)は_に置き換えられ、名前は 100 文字で切り詰められます。
フォルダーモードでは、Ctrl+S はアクティブなタブのサブツリーだけを書き込みます。
Ctrl+Shift+S(すべて保存)は全体を書き込みます。

プロジェクトに含まれるもの
Section titled “プロジェクトに含まれるもの”- ツリー:フォルダー、変数フォルダー、あらゆるプロトコルのリクエスト、シナリオ。
- 環境とその変数(サブ環境を含む)。
- カスタム値リスト とインポートされた列挙型。
- タグとその色。
- 変数フォルダーに添付された API ドキュメント。
- 「プロジェクト内」に保存された クイック設定。
- プロジェクト識別子(
_projectUuid)と形式のバージョン。
プロジェクトに含まれないもの
Section titled “プロジェクトに含まれないもの”ファイルを共有できるようにするため、意図的に除外されています。
| データ | 保存先 |
|---|---|
| シークレット | プロジェクトの隣にあるシークレット用の .env ファイル — シークレット を参照 |
| レスポンス履歴 | プロジェクトの隣に置かれる <project>.responses.zip アーカイブ |
| 「ユーザー」保存先のクイック設定 | ローカル設定 |
| お気に入り | アプリケーションのローカルストレージ(プロジェクト識別子でインデックス) |
| workbench のレイアウト | ローカル設定(プロジェクト単位でインデックス) |
| ワークスペース設定 | <project-folder>/.restorm/settings.json |
実用上の帰結として、トークンを流出させずに .restorm をコミットできますし、
同僚にご自身のタブレイアウトが渡ることもありません。
git のために作られたシリアライズ
Section titled “git のために作られたシリアライズ”バージョン管理を実用的にするためだけに存在する、2 つの保証があります。
- 正規化されたキー順序。 アイデンティティに関わるキーが先頭に来ます(
id、name、key、type、folderType、method、url)。残りはソートされます。 一方、配列の順序は決して変更されません。それはご自身が決めた順序です。 - 安定して導出される識別子。 エンティティの識別子はランダムに生成されるのではなく、 その意味的なパスから計算されます。2 人が同じ場所に同じリクエストを追加すれば同じ識別子になるため、 マージ時にエンティティを正しく対応づけられます。
その結果、プロジェクトを開いて何も変更せずに保存し直しても 差分は一切出ません。 統合された Git を参照してください。
最近使ったプロジェクト
Section titled “最近使ったプロジェクト”ファイル ▸ 最近使ったファイル には、直近で開いた 10 個のプロジェクトが表示されます。 無効になったパスは自動的に除かれます。同じ一覧がホーム画面にも使われます。