Creare e sviluppare un tema
Un tema è una cartella di file di testo (template, sezioni, snippet, CSS) che Riseact pubblica in versioni immutabili. Le organizzazioni installano una versione e decidono quando aggiornare.
Serve un account Partner: vedi la guida iniziale.
Installare la CLI
Scarica la versione per il tuo sistema dalla
pagina delle release e metti l'eseguibile
nel PATH. Poi autenticati:
riseact auth loginPartire da un tema esistente
riseact theme initClona un tema di partenza, chiede i dati del manifest.json (nome, identificativo,
versione, autore) e crea una cartella con il nome dell'identificativo. Il contenuto delle
sottocartelle è descritto in struttura di un tema.
L'identificativo è definitivo: Lega tra loro le versioni dello stesso tema e non si può cambiare. Il comando ti avverte se è già occupato.
Per ripartire da una versione già pubblicata:
riseact theme pull -p ./cartella-vuotaChiede tema e versione e ne scarica i file.
Sviluppare con l'anteprima dal vivo
cd il-tuo-tema
riseact theme devAlla prima esecuzione chiede su quale organizzazione lavorare e ci installa il tema, poi stampa due indirizzi: l'anteprima e l'editor visuale nel pannello.
Il tema resta nella libreria dell'organizzazione senza essere pubblicato: il sito visto dai
donatori non cambia. Ctrl+C non cancella niente, e il prossimo theme dev nella stessa
cartella riprende da lì.
Se non hai un'organizzazione su cui lavorare, creane una di sviluppo: è gratuita e senza dati reali.
La sincronizzazione va nei due sensi
Finché theme dev è in esecuzione, cartella e tema restano allineati:
- un file salvato in locale viene caricato subito: basta ricaricare l'anteprima;
- una modifica salvata dall'editor visuale aggiorna il file nella cartella.
Così colori, testi e composizione delle pagine si scelgono dall'editor: componi la homepage
trascinando le sezioni e templates/homepage.json si aggiorna da sé. È quel file a finire
nella release e a definire l'aspetto del tema appena installato.
All'avvio il comando riallinea le due parti, quindi ritrovi anche le modifiche fatte dall'editor a comando spento.
Nota: In caso di conflitto vince la modifica più recente. Se lo stesso file è cambiato da entrambe le parti a comando spento, vince la copia sul server e il nome del file viene stampato.
Tema e organizzazione della sessione sono salvati in .riseact/dev.json. Aggiungi
.riseact/ al .gitignore; se lo cancelli, il prossimo theme dev riparte da un tema
nuovo.
Cancellare file
Le cancellazioni si propagano solo mentre theme dev è in esecuzione. Un file cancellato a
comando spento viene riscaricato dal server al riavvio.
Escludere file dal caricamento
Gli strumenti di build vanno elencati in .riseactignore, nella radice del tema, con la
sintassi di .gitignore:
node_modules
package.json
package-lock.json
yarn.lock
tailwind.config.js
riseact.ymlLe regole valgono sia per il pacchetto sia per theme dev. .git, node_modules e
.riseact sono sempre esclusi.
Pericolo: Includi sempre riseact.yml: contiene le credenziali della CLI e altrimenti verrebbe
caricato con il tema.
L'output compilato invece va caricato: con Tailwind, per esempio, assets/main.css.
Pubblicare una versione
Quando il tema è pronto, alza la versione nel manifest.json e pubblica:
riseact theme releaseIl comando apre l'editor per il changelog. Le organizzazioni lo leggono prima di aggiornare: scrivi cosa cambia, non come. Un messaggio vuoto annulla la pubblicazione.
L'editor è il primo disponibile tra $VISUAL, $EDITOR, la chiave editor nel file di
configurazione, git config core.editor e nano.
In alternativa, riseact theme package prepara uno zip da caricare dall'area Partner, con le
stesse regole di validazione.
Regole di versionamento
La versione è nel formato MAJOR.MINOR.PATCH (per esempio 1.4.0), senza suffissi come
1.4.0-beta. La pubblicazione viene rifiutata se:
- la versione è già stata pubblicata per quel tema
- la versione è inferiore all'ultima pubblicata
- il changelog è vuoto
- un file non compila, o il blocco
{% schema %}di una sezione non è JSON valido
Se ci sono errori nei file, la risposta li elenca tutti con il percorso e nessuna versione viene creata.
Le versioni sono immutabili
Una versione pubblicata non si modifica: per correggere qualcosa se ne pubblica una nuova.
Cosa vede l'organizzazione
In Temi, ogni tema installato ha il pulsante Versione tema, da cui l'organizzazione può:
- scegliere una versione dall'elenco e leggerne il changelog
- vedere quali file modificati da lei verrebbero sovrascritti
- aggiornare il tema, oppure installare quella versione come tema separato
Si aggiorna solo in avanti. Una versione precedente si installa come tema separato.
Cosa l'aggiornamento conserva
| file | all'aggiornamento |
|---|---|
sections/, snippets/, layout/, assets/, config/settings_schema.json, templates/**/*.html | sostituiti dalla nuova versione |
config/settings_data.json | conservato; le impostazioni nuove vengono aggiunte con il loro valore predefinito |
templates/**/*.json | conservati; i template nuovi della versione vengono aggiunti |
Il codice del tema è tuo, le scelte dell'organizzazione sono sue. Una modifica all'HTML di
una sezione arriva a tutti; una sezione aggiunta a templates/homepage.json arriva solo a
chi installa il tema da zero.
Attenzione: Se rinomini o rimuovi una sezione, i template delle organizzazioni che la usano mostrano un errore al suo posto. Non rinominare le sezioni e non eliminare quelle sostituite.
Distribuire il tema
Le nuove versioni sono subito disponibili per le organizzazioni che hanno già il tema. Per renderlo installabile da altre, dalla pagina del tema nell'area Partner scegli:
- Le mie organizzazioni: lo trovano nello store dei temi tutte quelle che amministri, senza approvazione;
- Invia per l'approvazione: compare nello store dei temi di tutte le organizzazioni Riseact, dopo una nostra revisione con risposta via email.
Dettagli in Area partner: Temi.
Fonte: https://dev.riseact.org/docs/themes/development. Copia automatica da dev.riseact.org: non modificare qui, le modifiche vanno fatte sulla documentazione Docusaurus.