π Guida alla Scrittura della Documentazione β
Questa guida ti aiuterΓ a scrivere documentazione chiara e coerente per il progetto Elerama Frontend.
π― Principi Base β
- Chiarezza: Scrivi in modo semplice e diretto
- Esempi: Includi sempre esempi di codice pratici
- Aggiornamento: Aggiorna i docs quando modifichi il codice
- Organizzazione: Usa sezioni e sottosezioni logiche
π Struttura dei File β
Organizza i file per argomento:
docs/
βββ auth/ # Tutto sull'autenticazione
βββ cart/ # Gestione carrello
βββ api/ # Documentazione API
βββ testing/ # Guide ai test
βββ ...βοΈ Formato Markdown β
Frontmatter (opzionale) β
Aggiungi metadati all'inizio del file:
yaml
---
title: Titolo della Pagina
description: Breve descrizione per SEO
---Titoli β
markdown
# Titolo Principale (H1) - Solo uno per pagina
## Sezione (H2)
### Sottosezione (H3)
#### Paragrafo (H4)Blocchi di Codice β
Usa la sintassi con linguaggio specificato:
markdown
```typescript
// Codice TypeScript
const example = "hello";
```Aggiungi evidenziazione delle righe:
markdown
```typescript{2,4-6}
// Riga normale
const highlighted = true; // Evidenziata
// Riga normale
const block = {
also: "highlighted"
};
```Custom Containers β
VitePress supporta container speciali:
markdown
::: tip SUGGERIMENTO
Questo Γ¨ un suggerimento utile!
:::
::: warning ATTENZIONE
Fai attenzione a questo aspetto!
:::
::: danger PERICOLO
Questo puΓ² causare problemi!
:::
::: details Clicca per espandere
Contenuto nascosto che si espande al click
:::Link β
markdown
<!-- Link interno (relativo) -->
[Guida Autenticazione](./auth/authentication.md)
<!-- Link a sezione -->
[Vai alla sezione](#titolo-sezione)
<!-- Link esterno -->
[VitePress](https://vitepress.dev/)Tabelle β
markdown
| Funzione | Descrizione | Esempio |
|----------|-------------|---------|
| `login()` | Login utente | `await login(credentials)` |
| `logout()` | Logout utente | `await logout()` |Badge β
markdown
<Badge type="tip" text="Nuovo" />
<Badge type="warning" text="Deprecato" />
<Badge type="danger" text="Breaking Change" />Emoji β
Usa emoji per rendere la documentazione piΓΉ amichevole:
- π Per quick start, deployment
- β Per checklist, best practices
- β οΈ Per warning, note importanti
- π‘ Per tips, suggerimenti
- π Per note, documentazione
- π§ Per configurazione
- π Per bug, problemi
- π¨ Per UI, design
π Template per Nuove Pagine β
Template Feature β
markdown
---
title: Nome Feature
description: Breve descrizione della feature
---
# Nome Feature
Breve introduzione alla feature e quando usarla.
## π― Scopo
Spiega cosa fa questa feature e perchΓ© Γ¨ utile.
## π Quick Start
Esempio minimo per iniziare subito:
\`\`\`typescript
// Codice esempio
\`\`\`
## π Guida Completa
### Installazione/Setup
Passi per configurare la feature.
### Utilizzo Base
\`\`\`typescript
// Esempio base
\`\`\`
### Utilizzo Avanzato
\`\`\`typescript
// Esempio avanzato
\`\`\`
## βοΈ Configurazione
Opzioni disponibili e come configurarle.
## π§ͺ Testing
Come testare questa feature.
## β οΈ Note Importanti
Aspetti da tenere in considerazione.
## π Riferimenti
- [Link risorsa 1]()
- [Link risorsa 2]()Template API β
markdown
# API: Nome API
## Endpoint
\`\`\`
GET /api/endpoint
\`\`\`
## Parametri
| Nome | Tipo | Required | Descrizione |
|------|------|----------|-------------|
| `id` | `string` | β
| ID dell'elemento |
## Response
\`\`\`typescript
interface Response {
data: string;
success: boolean;
}
\`\`\`
## Esempio
\`\`\`typescript
const result = await apiRequest('/api/endpoint', {
params: { id: '123' }
});
\`\`\`
## Errori
| Codice | Messaggio | Descrizione |
|--------|-----------|-------------|
| 404 | Not Found | Elemento non trovato |π¨ Best Practices β
DO β β
- Esempi reali: Usa esempi dal codice reale del progetto
- Coerenza: Mantieni lo stesso stile in tutta la documentazione
- Testing: Testa gli esempi per assicurarti che funzionino
- Aggiornamenti: Aggiorna i docs insieme al codice
- Screenshots: Aggiungi immagini quando utili (in
docs/public/images/)
DON'T β β
- Non duplicare: Non ripetere informazioni presenti altrove
- Non essere vago: Sii specifico e preciso
- Non dimenticare: Non lasciare TODO o esempi incompleti
- Non complicare: Evita spiegazioni troppo complesse
π Revisione β
Prima di committare la documentazione:
- [ ] Il titolo Γ¨ chiaro e descrittivo?
- [ ] Gli esempi di codice funzionano?
- [ ] I link sono corretti?
- [ ] Il formato Γ¨ coerente?
- [ ] La grammatica Γ¨ corretta?
- [ ] Γ facile da capire per un nuovo sviluppatore?
π Sidebar β
Quando aggiungi una nuova pagina, ricordati di aggiungerla in docs/.vitepress/config.ts:
typescript
sidebar: [
{
text: 'Categoria',
items: [
{ text: 'Nuova Pagina', link: '/categoria/nuova-pagina' }
]
}
]π Preview Locale β
Avvia sempre il server locale per verificare che tutto sia corretto:
bash
npm run docs:devRicorda: La documentazione Γ¨ importante quanto il codice!