Aller au contenu
Toutes les notes
sept. 20261 min de lecture

Bonjour le monde

Un article d'exemple qui garde la collection typée et la compilation honnête. Remplacez-le par la première chose que vous voulez vraiment dire.

Chaque collection conserve une entrée d'exemple par langue, afin que son schéma reste vérifié et que le site compile sur un dépôt neuf. Supprimez ce fichier dès que vous avez de vrais articles à publier.

Le frontmatter est validé

Les schémas vivent dans velite.config.ts. title, date, slug et excerpt sont obligatoires ; la compilation échoue bruyamment sur un champ manquant ou mal formé — c'est précisément le but.

Champs optionnels

liveUrl, liveLabel, repo et pypiUrl attachent des liens à un article. draft: true masque une entrée sans la supprimer.

Le code est coloré à la compilation

Shiki s'exécute dans le pipeline de contenu : un extrait arrive donc déjà coloré, sans qu'aucun moteur de coloration n'atteigne le navigateur.

export function localeFrom(path: string): string {
  const segments = path.replaceAll('\\', '/').split('/')
  const index = segments.findLastIndex((segment) => COLLECTION_DIRS.has(segment))
 
  if (index < 1) {
    throw new Error(`Cannot infer a locale from ${path}`)
  }
 
  return segments[index - 1]
}

Les deux palettes sont compilées dans le balisage, et le thème choisit laquelle s'applique.