Skip to content
published Visibility internal Owner erik@uvilo.com Approver _ Created _ Updated _

Home Page

Architecture

The home page is /index.md at the repo root — served at / via the content collection glob (**/*.md, base: '..').

Do NOT edit .internal/src/content/docs/index.md — that file is excluded from the content collection by the !.internal/** pattern in content.config.ts. It is a stale orphan that is never served.

File Structure

---
title: Uvilo OS
description: ...
template: splash        # Starlight splash layout
hero:
  title: ...
  tagline: ...
  actions:
    - text: Button Label
      link: /route/slug/
      icon: right-arrow
      variant: secondary   # omit for primary
---

Body markdown here (rendered below the hero)

Route Mapping

File path → slug → URL:

  • Forge/README.mdforge/readme/forge/readme/
  • Product/README.mdproduct/readme/product/readme/

Rule: lowercase the full path, strip the .md extension, wrap with /.

Procedure

  1. Open [[orgRepoRoot]]/index.md
  2. Edit hero.actions[].link values for button destinations
  3. Update any matching markdown body links (the Sections list) to stay in sync
  4. Commit and push — changes are live on next Vercel deploy

Pitfalls

  • Wrong file: editing .internal/src/content/docs/index.md has no effect
  • Dead links: deleted files (e.g. INDEX.md) must be replaced with an existing route
  • Route format: always lowercase; use underscores for spaces (matches Starlight slug generation)
  • Both places: hero actions AND body markdown links must both be updated when changing targets