Guida introduttiva ad Astro-Theme-Aither
Tutto ciò che serve per installare, configurare, personalizzare e distribuire Astro-Theme-Aither in un’unica guida.
Questa guida ti accompagna da zero fino a un blog multilingue pubblicato. Puoi leggerla dall’inizio alla fine oppure saltare direttamente alla sezione che ti serve.
Prerequisiti
- Node.js 22 LTS o successivo
- pnpm 10 o successivo
- Un account GitHub
- Un account Cloudflare per il deploy
Installazione
git clone https://github.com/YOUR_USERNAME/YOUR_REPO.gitcd YOUR_REPOcorepack enablepnpm installpnpm validatepnpm devPoi apri http://localhost:4321.
Struttura del progetto
src/├── components/ # Componenti Astro e React├── config/site.ts # Nome sito, navigazione, footer e link social├── content/posts/ # Post organizzati per locale├── i18n/ # Traduzioni UI├── layouts/ # Layout├── lib/ # Utility├── pages/ # Pagine e route└── styles/global.css # Token tema in Tailwind v4Configurazione
Site Config
src/config/site.ts è la fonte unica di configurazione:
export const siteConfig = { name: 'Il nome del tuo blog', title: 'Il tuo sottotitolo', description: 'La tua descrizione SEO', author: { name: 'Il tuo nome', avatar: '', },};Variabili d’ambiente
cp .env.example .envLascia vuota una variabile per disattivare il relativo servizio.
URL del sito
Configura l’URL finale in astro.config.mjs:
import { defineConfig } from 'astro/config';import aither from '@aither/astro';
export default defineConfig({ site: 'https://your-domain.pages.dev', integrations: [aither()],});Scrivere post
Crea un file .mdx in src/content/posts/en/:
---title: Il mio primo postdate: "2026-03-14T16:00:00+08:00"category: Generaldescription: Un breve riepilogo per SEO e anteprime social.tags: [Topic, Another]pinned: false---
Il contenuto inizia qui.Riferimento frontmatter
| Campo | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
title | string | Sì | Titolo del post |
date | date | Sì | Data e ora di pubblicazione (es. 2026-03-14T16:00:00+08:00) |
category | string | No | Categoria |
description | string | No | Descrizione SEO |
tags | string[] | No | Elenco tag |
pinned | boolean | No | Fissa il post in alto |
image | string | No | Immagine di copertina |
Componenti MDX
Puoi importare componenti direttamente nei contenuti:
import MyChart from '@/components/MyChart'
<MyChart data={[10, 20, 30]} />Internazionalizzazione
Il tema supporta 11 lingue. Per aggiungere una traduzione, crea lo stesso file nella cartella del locale desiderato:
src/content/posts/en/my-post.mdxsrc/content/posts/it/my-post.mdxsrc/content/posts/zh-hans/my-post.mdxI testi dell’interfaccia si trovano in src/i18n/messages/.
Sezioni di contenuto personalizzate
Puoi aggiungere raccolte come traduzioni, note o tutorial registrandole in src/content.config.ts e src/config/site.ts. Le pagine elenco e dettaglio verranno generate automaticamente.
Theming
Il sistema ha due livelli:
- modalità colore:
light,dark,system - stile tema:
defaulto uno stile integrato comeevolution
ui: { defaultMode: 'system', defaultStyle: 'default', showMoreThemesMenu: true,},I colori vivono in src/styles/global.css. Il tema usa di default uno stack sans-serif di sistema e uno stack monospace per il codice.
SEO e AI
Ogni pagina espone già questi output:
/sitemap-index.xml/rss.xml/robots.txt/llms.txt/llms-full.txt/posts/slug.md- JSON-LD e Open Graph
Deploy
Cloudflare Pages
Buona pratica: crea prima il progetto Pages. Il flusso usa il nome del repository per default, oppure CLOUDFLARE_PAGES_PROJECT_NAME se vuoi sovrascriverlo.
Aggiungi questi secret in GitHub:
CLOUDFLARE_API_TOKENCLOUDFLARE_ACCOUNT_ID
Poi esegui pnpm validate e fai push su main.
Comandi utili
| Comando | Descrizione |
|---|---|
pnpm dev | Avvia il server di sviluppo |
pnpm validate | Esegue la suite completa di validazione prima del push |
pnpm build | Crea la build di produzione |
pnpm preview | Anteprima locale della build |
Schema di versione
I tag di release pubblici seguono nomi in stile CalVer, ad esempio v2026.04.08.
Commenti