Come lanciare rapidamente un sito vetrina flessibile a 0$ senza esperienza nel web development: un compromesso tra flessibilità e semplicità

Storia di un match: perché ho scelto la combinazione Astro e Cloudflare Pages per le mie applicazioni

App Screenshot

L’origine dell’idea e i requisiti iniziali

Sono uno sviluppatore di applicazioni mobili. Del web development ho una conoscenza esclusivamente superficiale e non ho esperienza pratica alle spalle. Quando è nata l’idea fissa di portare finalmente le mie app mobili al rilascio su Google Play, ho subito pensato a come creare un mio sito vetrina che contenesse le informazioni su tutti i miei progetti. Allo stesso tempo, non volevo dedicare un tempo significativo alla creazione o alla manutenzione, né all’inizio né in prospettiva, e i requisiti per il sito non erano dei più banali. Fin dall’inizio avevo capito cosa mi serviva esattamente dal sito. Non cercavo di creare qualcosa di elefantiaco: mentalmente ero pronto a scrivere a mano varie astrazioni per semplificare la pubblicazione degli articoli, ma non volevo armeggiare con la configurazione di qualcosa di ingombrante come i classici CMS con moduli e soluzioni simili.

Ecco quindi i criteri che ho maturato e perché li ho formulati in questo modo:

  • Minimo sforzo di sviluppo e manutenzione con una personalizzazione flessibile: inizialmente volevo dei template, ma in cui potessi “mettere le mani” all’occorrenza per implementare ciò che serviva a me, e non solo ciò che il sistema permetteva;
  • Configurazione SEO-friendly: l’obiettivo è sempre che il sito funga da veicolo di traffico verso le mie applicazioni mobili;
  • Supporto Markdown: capivo che mi serviva la possibilità di formare un template per dare forma ai miei pensieri, dato che impaginare da zero (anche se spesso con il copia-incolla per ogni pagina) è una vera faticaccia;
  • Supporto facile al multilinguismo: anche qui, come nel punto precedente, l’idea è il traffico. Perché non coprire le ricerche in altre lingue che teoricamente potrebbero essere meno competitive?
  • Minore è il costo, meglio è: non era un criterio assoluto, ma è sempre un bonus gradito, specialmente per gli sviluppatori indie.

Ricerca delle opzioni e scelta di Astro e Cloudflare Pages

Sarò breve e non citerò specificamente ciò che ho provato: vari siti per biglietti da visita e generatori di template. I piani gratuiti si sono rivelati molto limitati: in alcuni mancava la gestione SEO, in altri capivi subito che senza acquistare un piano non saresti andato da nessuna parte. Ma il motivo principale per cui ho scartato le opzioni di generazione template è che non mi soddisfaceva la meccanica di creazione. In alcune varianti non era scontato nemmeno come creare una semplice pagina di base. In parte, forse era il mio umore e non avevo voglia di approfondire troppo, e inconsciamente avevo in testa il pensiero: “Anche se non sono un web developer e so poco di questo campo, e se mi armassi di un assistente IA e provassi a creare delle comode astrazioni per gestire una struttura a template adatta a me e ai miei compiti?”. C’era il timore di impantanarsi nel lato tecnico e fallire, scontrandosi con incertezze lunghe da risolvere che avrebbero fatto svanire la motivazione (credo che molti conoscano la paura di perdere la motivazione).

E così, in una delle serate passate a discutere le opzioni con l’IA, mi è stata proposta la combinazione Astro e Cloudflare Pages.

Come ho provato la combinazione Astro e Cloudflare Pages

Dalle conversazioni con l’IA ho capito che questa combinazione soddisfaceva pienamente i miei criteri e offriva persino di più. I vantaggi principali che sono arrivati come bonus:

  1. Nessuna confusione con Docker, build del progetto o deploy: dai a Cloudflare Pages l’accesso alla repository git, fai il push nel branch master e il servizio si occupa della build e della messa online. In pratica, dopo il push non devi fare assolutamente nulla.
  2. Verifica locale: controllare ciò che hai fatto localmente richiede letteralmente un solo comando. Controlli, testi e fai di nuovo il push.

Conclusione del mio test di questa combinazione: i miei requisiti e obiettivi sono stati rispettati, posso continuare in questa direzione. La bozza del mio sito con la prima struttura è stata pronta letteralmente in una serata.

Astro e i miei criteri

Non ripeterò gli elogi su questo framework facilmente reperibili su Google, descriverò solo come Astro ha risolto i miei problemi personali:

  • Minimo sforzo e personalizzazione flessibile: una bozza del sito, fatta in fretta e furia, è stata generata in una serata.
  • Configurazione SEO: in Astro l’intera pagina per impostazione predefinita è puro HTML e, di conseguenza, tutta la SEO è nelle mie mani.
  • Supporto Markdown: Astro lo implementa in modo eccellente. Si può creare una struttura con una pagina web template e definire separatamente le condizioni minime per visualizzare il contenuto che verrà attinto da file md o mdx. Per creare una nuova pagina in futuro, basterà creare solo un file md. Niente copia-incolla di HTML.
  • Multilinguismo: implementato in Astro tramite il meccanismo i18n. Basta impostare correttamente la struttura a livello di cartelle. Sono arrivato a conservare le stringhe di ogni pagina in un array in formato JSON. Anche la traduzione dei file markdown è supportata: basta impostare la struttura.
  • Costo: Cloudflare Pages si è rivelato un meccanismo con limiti generosi nel piano gratuito (fino a 500 build del progetto al mese). Risultato: ho pagato solo il dominio.

Considerando la velocità con cui evolve il web development, Astro e Cloudflare Pages non sono certamente le uniche soluzioni simili. Semplicemente, in una serata è scoccato il “match”, le mie richieste sono state soddisfatte, ed era tutto ciò di cui avevo bisogno. Se avete obiettivi simili, lo consiglio decisamente.

Consigli finali

Un piccolo appunto su ciò di cui mi sono pentito o che non ho considerato subito (pensieri per chi si immerge nel web per la prima volta):

  1. Pensa alla struttura in anticipo: prima di mettere mano al codice, meglio disegnare il sito in un editor qualsiasi per capire la gerarchia delle pagine.
  2. Unificazione dei componenti: pensa in anticipo a cosa sarà un componente ripetitivo (header, footer, pulsanti). Ragiona in termini di design system per evitare il refactoring e di perdere tempo a estrarre gli stili comuni in un secondo momento.
  3. Multilinguismo: approfondisci cosa sono i canonical tags, in modo che i robot dei motori di ricerca non facciano confusione con le versioni tradotte.

Conclusione

A mio parere, pur non avendo esperienza nel web development, con la combinazione Astro e Cloudflare Pages è possibile creare siti flessibili e potenti. Armati di strumenti IA, la maggior parte dei problemi oggi è assolutamente risolvibile. E cosa importante per molti: sarà gratuito (escludendo il costo del dominio, che considero un investimento giustificato).