Salta ai contenuti

Generazione di codice

Dalla sezione Codice, Restorm genera il codice della sua applicazione a partire dal suo design. La generazione si basa su template compatibili con Cookiecutter/Copier: i suoi, o quelli proposti da Restorm.

La sezione Codice: un template aggiunto, una cartella di output e l'anteprima dell'albero generato prima della scrittura

  1. Aggiunga uno o più template — tramite la libreria di template.
  2. Scelga una cartella di output (assoluta, o relativa al progetto).
  3. Clicchi su Genera il progetto.

La generazione è resa in una sandbox poi prodotta sotto forma di anteprima: Restorm Le mostra l’albero dei file generati e non scrive nulla finché non ha confermato. Può allora Scrivere nella cartella di output o Abbandonare. (La generazione è bloccata finché restano problemi di validazione.)

Un template può dichiarare delle domande (nel senso di Copier — per esempio un project_slug), a cui risponde al momento di generare. Le sue risposte sono registrate in un file .copier-answers.yml alla radice dell’output, e ricaricate alla generazione successiva.

La generazione non è a senso unico. Rigenerare svolge il ruolo di un copier update: Restorm memorizza una base e realizza una fusione a tre vie tra il nuovo output del template e le sue modifiche locali — i suoi cambiamenti non sono quindi sovrascritti. Faccia evolvere il suo design (o il template), rigenera, e il codice si aggiorna preservando il suo lavoro.

La libreria di template propone quattro fonti:

  • Ufficiale — i template mantenuti da Restorm, visibili a tutti.
  • Organizzazione — i template condivisi all’interno della sua organizzazione, privati per i suoi membri. È una funzionalità Enterprise: un admin — o un membro con il diritto gestire i template — li aggiunge o li rimuove (URL del repository + descrizione), dalla scheda Template <organizzazione> della libreria o dal pannello di amministrazione. Vedi Template ufficiali e di organizzazione.
  • Repository — un repository GitHub proprietario/nome (tipicamente un fork di un template ufficiale che ha adattato).
  • Cartella locale — un template in sviluppo, senza rete.

La struttura di un template e il catalogo ufficiale sono descritti nella pagina Template ufficiali. Ciò che un template riceve dal suo design (modelli, rotte e i loro flag) è dettagliato in Il contesto del template, e le impostazioni proprie del template in Variabili di generazione.