Come è costruito questo sito

/ Articolo

Tradotto automaticamente. Leggi l’originale in inglese: A static blog that translates its own URLs into eight languages →

Questo è il primo post, quindi tanto vale spiegare la macchina che lo ha pubblicato. L’intero sito è composto da file statici — niente server, niente database, niente da tenere in esecuzione.

Scrivere un post

Basta inserire un file Markdown in src/content/blog/en/. Il nome del file diventa l’URL, quindi how-i-removed-greptile.md viene pubblicato su /blog/how-i-removed-greptile. Il frontmatter è breve:

---
title: How I removed Greptile
description: One sentence for search results and social cards.
pubDate: 2026-08-07
tags: [tooling, code-review]
---

Imposta draft: true mentre ci stai ancora lavorando. I draft vengono renderizzati con npm run dev ma sono esclusi dalla build.

Traduzione

Quando un post arriva su main, una GitHub Action lo invia a DeepSeek V4 Flash e scrive otto traduzioni nel repository come normali file Markdown. Anche lo slug viene tradotto, quindi la versione turca di questo post vive a un URL turco, non a un URL inglese attaccato a un prefisso /tr.

Ogni file tradotto registra un hash della fonte inglese da cui proviene. All’esecuzione successiva, i post il cui hash corrisponde vengono saltati — quindi modificare un post ritraduce solo quel post, non tutto l’archivio.

Livello Scelta
Framework Astro, output statico
Hosting Cloudflare Workers static assets
Traduzione DeepSeek V4 Flash su Fireworks
Contenuto Markdown in git

Deploy

Unire a main esegue il passaggio di traduzione, committa le modifiche, builda e fa il deploy. La build richiede pochi secondi e l’output è una cartella di HTML.

La proprietà più bella di un sito statico è che le modalità di fallimento sono noiose. Niente può crollare alle 3 di notte, perché non c’è niente in esecuzione.

Premi T per passare dalla modalità chiara a quella scura, e B, A, G o L per saltare tra le sezioni del sito.