L’inizio dell’anno mi ha trovato con un obiettivo chiaro: trasformare le idee che mi passano per la testa in articoli per il blog con maggiore efficienza. L’ispirazione è venuta dalla necessità di un ‘segretario notturno’ capace di rielaborare i miei pensieri. Per questo motivo ho costruito Brainstack . Successivamente ho ritrovato idee simili in progetti come quello di Alexey Grigolev che mirano a facilitare la generazione di contenuti.
Il Collo di Bottiglia della Pubblicazione Manuale #
Nonostante avessi un flusso costante di idee, la frizione nel processo di pubblicazione era significativa. La necessità di copiare, incollare, formattare e revisionare manualmente ogni pezzo di contenuto si traduceva spesso in articoli mai pubblicati. Questa inerzia, dovuta alla mancanza di voglia e organizzazione, rappresentava un collo di bottiglia che richiedeva una soluzione ingegneristica per ridurre l’attrito.
La Scelta Architetturale: Git-Based CMS e Automazione #
Dopo aver analizzato il problema con gemini, è emersa la necessità di ripensare l’architettura del sito. L’obiettivo era disaccoppiare la fase di editing dalla manipolazione diretta del codice. Ho esplorato soluzioni che simulassero un pannello di amministrazione ma che, sotto il cofano, sfruttassero il sistema di versionamento Git per la gestione e la revisione degli articoli. Questa direzione si è rivelata ideale per un sito web statico, come il mio, che utilizza Hugo. Inoltre a differenza del sistema di Alexey utilizzo un sistema in parte self hosted (per la trascrizione) e con le api di gemini (che ho gratuitamente nel mio abbonamento).
Il Workflow di Contenuto Self-Hosted #
Ho quindi progettato un workflow che integra diverse componenti per automatizzare il processo:
- Trascrizione Vocale (FastWhisper V3): Il primo passo è la trascrizione delle mie note vocali. Ho integrato FastWhisper V3, configurato per la lingua italiana, per convertire in testo i miei flussi di pensiero. Questo abbassa la barriera iniziale della scrittura, permettendomi di catturare le idee in modo più naturale e immediato.
- Organizzazione e Routing dei Topic: Successivamente, un comando
fetchsposta la trascrizione in una categoria o ’topic’ predefinito. Ho implementato un sistema di routing automatico per suggerire il topic più adatto, una funzionalità ancora in fase di valutazione ma utile per organizzare idee multiple emerse durante la giornata. - Generazione della Bozza (LLM): Le note trascritte vengono poi elaborate tramite un comando
draft, che le trasforma in una bozza di articolo. Inizialmente, ho affidato la stesura al prompt di default che mi aveva creato gemini ma lo stile generato non rispecchiava pienamente il mio stile di scrittura. Ho quindi affinato il prompt e i parametri per guidare l’LLM a produrre un testo più allineato al mio tono pragmatico e ingegneristico, pur mantenendo la sua capacità di strutturare i pensieri in modo coerente. - Workflow Editoriale (Sveltia CMS): Il sistema genera automaticamente il codice Markdown compatibile con Hugo, caricandolo come bozza. La fase cruciale di revisione non avviene tramite la modifica diretta del codice, ma attraverso l’interfaccia amministrativa fornita da Sveltia. Questo Git-based CMS offre un editor inline nella dashboard, permettendomi di affinare il testo, correggere eventuali imprecisioni o migliorare la fluidità senza mai interagire con il repository Git direttamente. Questo riduce drasticamente l’attrito e accelera il ciclo di revisione.
- Supporto Multilingue: Una volta finalizzata la versione italiana (perché comunque riguardo quello che scrive gemini), il bot Telegram, anch’esso parte del mio ecosistema self-hosted, viene istruito per adattare il contenuto in inglese. Questo passaggio è fondamentale per mantenere il sito bilingue, con l’inglese come lingua primaria, garantendo una maggiore accessibilità senza dover tradurre manualmente.
Deployment Ottimizzato con Cloudflare Pages #
Dopo la revisione finale, sempre dall’interfaccia di Sveltia, l’articolo viene spostato nello stato di ‘pubblicazione’. Questo triggera automaticamente la pipeline di build di Hugo. Inizialmente, avevo configurato GitHub Actions per questo scopo. Tuttavia, per motivi di privacy sui commit intermedi (anche se non penso freghino a qualcuno ma sono paranoico), ho migrato l’intero processo di deployment su Cloudflare Pages. Cloudflare non solo gestisce la build e l’hosting del sito statico, ma offre anche benefici aggiuntivi come la protezione DDoS integrata e la gestione automatica dei certificati SSL (non é uno sponsor :) ) , riducendo l’overhead operativo e migliorando la sicurezza.
Conclusioni e Prospettive Future #
Questo workflow integrato mi permette di superare la barriera della pubblicazione, trasformando le idee grezze in articoli strutturati e multilingue con un attrito minimo. Il risultato è un processo di creazione di contenuti più efficiente e sostenibile. In futuro, intendo pubblicare il codice sorgente di questo sistema, offrendo una base per chiunque desideri implementare un workflow simile per la propria produzione di contenuti.