Progetti e file .restorm
Un progetto Restorm vive sul proprio disco. Non esiste uno spazio di lavoro remoto né una sincronizzazione proprietaria: si apre un file, lo si salva, lo si mette sotto commit.
Due modalità di archiviazione
Section titled “Due modalità di archiviazione”File unico .restorm
Section titled “File unico .restorm”La modalità predefinita (File ▸ Nuovo, poi Salva con nome). L’intero
progetto sta in un solo file, in YAML per impostazione predefinita. Sono
disponibili altri due formati di serializzazione: json e json5.
Modalità cartella
Section titled “Modalità cartella”File ▸ Apri cartella. Il progetto viene distribuito in un albero sul disco, cosa che produce diff molto più granulari sui progetti di grandi dimensioni:
- un file di configurazione
restorm.confnella radice, che contiene soltanto il formato (format: yaml | json | json5); - un file di indice per ogni directory (
index.yaml,index.json…); - cartelle e file denominati
<index> - <name>, con l’indice completato da zeri sulla larghezza dei pari livello, in modo che l’ordine a schermo sia l’ordine sul disco. I caratteri non ammessi (<>:"/\|?*) vengono sostituiti da_e il nome viene troncato a 100 caratteri.
In modalità cartella, Ctrl+S scrive soltanto il sottoalbero della scheda
attiva; Ctrl+Shift+S (Salva tutto) scrive l’insieme.

Ciò che il progetto contiene
Section titled “Ciò che il progetto contiene”- l’albero: cartelle, cartelle di variabili, richieste di tutti i protocolli, scenari;
- gli ambienti e le loro variabili, compresi i sotto-ambienti;
- gli elenchi di valori personalizzati e le enumerazioni importate;
- i tag e i loro colori;
- la documentazione di API allegata alle cartelle di variabili;
- le impostazioni rapide salvate «nel progetto»;
- un identificatore di progetto (
_projectUuid) e una versione di formato.
Ciò che il progetto non contiene
Section titled “Ciò che il progetto non contiene”Deliberatamente, perché il file sia condivisibile:
| Dato | Dove risiede |
|---|---|
| Segreti | Un file .env di segreti accanto al progetto — si veda Segreti |
| Cronologia delle risposte | Un archivio <project>.responses.zip collocato accanto al progetto |
| Impostazioni rapide «utente» | Le impostazioni locali della macchina |
| Preferiti | L’archiviazione locale dell’applicazione, indicizzata per identificatore di progetto |
| Disposizione del workbench | Le impostazioni locali, indicizzate per progetto |
| Impostazioni dell’area di lavoro | <project-folder>/.restorm/settings.json |
Conseguenza pratica: si può mettere sotto commit un .restorm senza esfiltrare
un token, e il collega non riceve la disposizione delle schede di chi lo ha
creato.
Una serializzazione pensata per git
Section titled “Una serializzazione pensata per git”Due garanzie, che esistono unicamente perché il versionamento sia utilizzabile:
- Ordine canonico delle chiavi. Le chiavi di identità vengono per prime
(
id,name,key,type,folderType,method,url), il resto è ordinato. L’ordine degli array, invece, non viene mai modificato: è l’ordine scelto dall’autore. - Identificatori derivati in modo stabile. L’identificatore di un’entità è calcolato a partire dal suo percorso semantico, non estratto a caso. Due persone che aggiungono la stessa richiesta nello stesso punto producono lo stesso identificatore, il che permette alla fusione di appaiare correttamente le entità.
Risultato: aprire e poi salvare di nuovo un progetto senza modificare nulla non produce nessun diff. Si veda Git integrato.
Progetti recenti
Section titled “Progetti recenti”File ▸ File recenti elenca gli ultimi dieci progetti aperti; i percorsi diventati non validi vengono rimossi automaticamente. Lo stesso elenco alimenta la schermata di benvenuto.