Skip to content
Select theme

Site basics

All of it lives in astro.config.mjs, in the object you pass to starlight().

starlight({
title: 'My Docs',
// ...
});

Sets the browser tab and the text in the header. Leave it alone and every page says My Docs — replace it with your product or company name.

The site field (or DOCS_SITE_URL) is what the sitemap and llms.txt use to emit absolute URLs — covered in full on Deploy, including what ships if you leave it unset. Set it once; nothing else on this page depends on it.

social: [
{
icon: 'github',
label: 'GitHub',
href: 'https://github.com/ekline-io/potluck-docs',
},
],

Each entry is an icon button in the header. Leave this alone and your docs site links to this template’s own repository, not yours — the astro.config.mjs comment above it flags this as a TODO for exactly that reason. Point href at your own repo (or delete the entry if you don’t want one), and add more entries — Discord, X, npm, whatever’s relevant — using any icon name from Starlight’s icon set.

Starlight looks for favicon in the starlight() config; leave it unset and it defaults to /favicon.svg, resolved against public/. The template ships a placeholder icon at exactly that path (public/favicon.svg), so the site already has a favicon out of the box — just not one that’s yours.

To replace it, either:

  • Overwrite public/favicon.svg with your own file, keeping the name, or

  • Point favicon at a different path in public/:

    starlight({
    favicon: '/my-favicon.png',
    });

.ico, .gif, .jpg, .png, and .svg all work.

Maintained by EkLine