Zum Inhalt springen
Alle Notizen
Sept. 20261 Min. Lesezeit

Hallo Welt

Ein Platzhalter-Beitrag, der die Sammlung typisiert und den Build ehrlich hält. Ersetze ihn durch das Erste, was du wirklich sagen willst.

Jede Sammlung behält pro Sprache einen Beispieleintrag, damit ihr Schema geprüft bleibt und die Seite in einem frischen Checkout baut. Lösche diese Datei, sobald du echte Texte veröffentlichst.

Frontmatter wird validiert

Die Schemata liegen in velite.config.ts. title, date, slug und excerpt sind Pflicht; der Build schlägt bei einem fehlenden oder fehlerhaften Feld laut fehl — genau darum geht es.

Optionale Felder

liveUrl, liveLabel, repo und pypiUrl hängen Links an einen Beitrag. draft: true blendet einen Eintrag aus, ohne ihn zu löschen.

Code wird beim Build hervorgehoben

Shiki läuft in der Content-Pipeline: ein Beispiel kommt also schon farbig an, ohne dass ein Highlighter im Browser landet.

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]
}

Beide Paletten stecken im Markup, und das Thema entscheidet, welche gilt.