A propos de StaticWGen

StaticWGen est un generateur de sites statiques construit entierement sur l'ecosysteme .NET. Il a ete cree pour prouver qu'il n'est pas necessaire d'utiliser une toolchain JavaScript pour construire des sites statiques modernes et riches en fonctionnalites.

Architecture

Le pipeline de build est orchestre par NUKE et suit une conception composable :

flowchart TB
    subgraph Entree
        MD[Markdown + YAML Front Matter]
        TPL[Template Scriban]
        ASSETS[CSS / JS / Images]
    end
    subgraph Pipeline
        PARSE[Analyse et Extraction Metadata]
        FILTER[Filtre: Brouillon / Planifie / Archive]
        RENDER[Rendu HTML via Scriban]
        TAGS[Generation Pages de Tags]
        BLOG[Generation Index Blog]
        SEARCH[Construction Index Recherche]
        SEO[Sitemap + Robots + Flux]
    end
    subgraph Sortie
        HTML[Fichiers HTML Statiques]
        JSON[search-index.json]
        XML[sitemap.xml + feed.xml]
    end
    MD --> PARSE --> FILTER --> RENDER --> HTML
    TPL --> RENDER
    ASSETS --> HTML
    RENDER --> TAGS --> HTML
    RENDER --> BLOG --> HTML
    RENDER --> SEARCH --> JSON
    RENDER --> SEO --> XML

Extensions Markdown

StaticWGen utilise Markdig avec un ensemble d'extensions soigneusement choisies :

Cycle de Vie du Contenu

StatutComportement
PublieVisible sur le site, inclus dans les flux et la recherche
BrouillonCache sauf si construit avec --include-drafts
PlanifieAuto-publication quand la publishDate arrive
ArchiveAccessible par URL mais exclu de la navigation

Philosophie

  1. Le contenu d'abord — le Markdown est la source de verite
  2. Pas de magie — chaque etape est du code C# explicite
  3. Dependances minimales — Pico CSS + JS vanilla, pas de framework
  4. Deployer partout — Docker, GitHub Pages, S3, ou cp -r output/ /var/www