Guida completa per creare e formattare nuovi progetti MDX
Come Creare Progetti
2 min
474 parole
Come Creare Progettih1
Questa guida ti spiegherà come creare nuovi progetti per la sezione Progetti utilizzando file MDX.
Struttura dei Fileh2
Ogni progetto deve essere creato in una cartella dedicata all’interno di src/content/projects/. La struttura consigliata è:
src/content/projects/ └── nome-progetto/ ├── index.mdx └── assets/ (opzionale) └── cover.pngFrontmatterh2
Ogni file MDX deve iniziare con un blocco frontmatter YAML che contiene i metadati del progetto:
---title: 'Nome del Progetto'description: 'Breve descrizione del progetto'pubDate: 2025-01-15author: 'vlolek'tags: ['tag1', 'tag2']updatedDate: 2025-01-20 (opzionale)cover: assets/cover.png (opzionale)ogImage: assets/og-image.png (opzionale)recommend: false (opzionale, default: false)postType: 'metaOnly' | 'coverTop' | 'coverSplit' (opzionale)coverLayout: 'left' | 'right' (opzionale)pinned: false (opzionale, default: false)draft: false (opzionale, default: false)license: 'MIT' (opzionale)githubUrl: 'https://github.com/username/project' (opzionale)website: 'https://progetto.example.com' (opzionale)---Campi Obbligatorih3
- title: Nome del progetto
- description: Descrizione breve del progetto
- pubDate: Data di pubblicazione nel formato
YYYY-MM-DD - author: Nome dell’autore (default: ‘vlolek’)
Campi Opzionali Specifici per Progettih3
- githubUrl: URL del repository GitHub del progetto
- website: URL del sito web del progetto (se disponibile)
- tags: Array di tag per categorizzare il progetto
- cover: Immagine di copertina del progetto
- ogImage: Immagine personalizzata per Open Graph
- recommend: Se
true, mostra un badge “CONSIGLIATO” - postType: Tipo di layout (vedi sezione Layout)
- coverLayout: Posizione dell’immagine (
leftoright) - pinned: Se
true, il progetto appare in evidenza - draft: Se
true, il progetto non viene pubblicato - license: Licenza del progetto (es: ‘MIT’, ‘GPL-3.0’, ecc.)
Contenutoh2
Dopo il frontmatter, puoi scrivere la descrizione dettagliata del progetto utilizzando Markdown standard e componenti MDX.
Esempio Completoh3
---title: 'Il Mio Progetto'description: 'Un progetto fantastico realizzato con tecnologie moderne'pubDate: 2025-01-15author: 'vlolek'tags: ['web', 'react', 'typescript']cover: assets/cover.pnggithubUrl: 'https://github.com/username/mio-progetto'website: 'https://mio-progetto.example.com'recommend: truedraft: false---
# Il Mio Progetto
Descrizione dettagliata del progetto, delle sue caratteristiche e funzionalità.
## Caratteristiche
- Feature 1- Feature 2- Feature 3
## Tecnologie Utilizzate
- React- TypeScript- Tailwind CSS
## Installazione
\`\`\`bashnpm installnpm run dev\`\`\`
## Link
- [GitHub](https://github.com/username/mio-progetto)- [Demo](https://mio-progetto.example.com)Layout dei Progettih2
I progetti supportano gli stessi layout degli articoli:
MetaOnlyh3
Layout semplice senza immagine di copertina:
postType: 'metaOnly'CoverToph3
Immagine di copertina posizionata in alto:
postType: 'coverTop'cover: assets/cover.pngCoverSplith3
Immagine di copertina divisa con il contenuto:
postType: 'coverSplit'cover: assets/cover.pngcoverLayout: 'right' # o 'left'Best Practicesh2
- Nomi delle cartelle: Usa nomi descrittivi in minuscolo con trattini (es:
mio-progetto) - Immagini: Salva le immagini nella cartella
assets/dentro la cartella del progetto - Link esterni: Includi sempre
githubUrlse il progetto è open source - Descrizioni: Scrivi descrizioni chiare che spieghino cosa fa il progetto
- Tag: Usa tag rilevanti per facilitare la ricerca
Creare un Nuovo Progettoh2
- Crea una nuova cartella in
src/content/projects/nome-progetto/ - Crea il file
index.mdxnella cartella - Aggiungi il frontmatter con tutti i metadati necessari
- Includi
githubUrle/owebsitese disponibili - Scrivi la descrizione dettagliata in Markdown/MDX
- Se necessario, aggiungi immagini nella cartella
assets/ - Imposta
draft: falsequando sei pronto a pubblicare
Noteh2
- I progetti con
draft: truenon vengono visualizzati nel sito - I progetti con
pinned: trueappaiono in evidenza nella homepage - La data
pubDatedetermina l’ordine di visualizzazione (più recenti prima) - I link GitHub e Website vengono mostrati automaticamente nella pagina del progetto