Quickstart
This guide takes you from an empty directory to a themed, searchable docs site. By the end you’ll have a project you can commit and deploy.
Create the project
Section titled “Create the project”-
Scaffold a new Starlight site and pick the minimal template when prompted:
Terminal window npm create astro@latest my-pack -- --template starlightTerminal window pnpm create astro@latest my-pack --template starlightTerminal window bun create astro@latest my-pack -- --template starlight -
Move into the project and add the theme:
Terminal window cd my-packnpm install @nebari/starlight -
Register the plugin in
astro.config.mjs:astro.config.mjs import starlight from '@astrojs/starlight';import { nebari } from '@nebari/starlight';import { defineConfig } from 'astro/config';export default defineConfig({integrations: [starlight({title: 'My Pack',plugins: [nebari()],}),],}); -
Run the dev server:
Terminal window npm run dev
Open http://localhost:4321 and you’ll see the Nebari header, footer, and
accent colors already applied.
What you get
Section titled “What you get”A fresh pack has this shape. The theme owns presentation; everything under
src/content/docs/ is yours to write.
- astro.config.mjs the
nebari()plugin lives here - package.json
Directorysrc
Directorycontent
Directorydocs
- index.mdx your landing page (use the
splashtemplate) Directorygetting-started
- installation.md
- quickstart.md
Directoryguides/
- …
Directoryreference/
- …
- index.mdx your landing page (use the
- content.config.ts Starlight’s docs collection schema
Directorypublic/ static assets served as-is
- …
Add your first page
Section titled “Add your first page”Create src/content/docs/guides/hello.md:
---title: Hello, Nebaridescription: My first themed page.---
Welcome to my pack. This paragraph already uses Inter, and code blocks use FiraCode:
```pyprint("themed code, no extra setup")```Then add it to the sidebar in astro.config.mjs:
sidebar: [ { label: 'Guides', items: [{ label: 'Hello', link: '/guides/hello/' }], },],Ship it
Section titled “Ship it”-
Build the static site:
Terminal window npm run build -
Preview the production build locally:
Terminal window npm run preview
The dist/ directory is a plain static site — deploy it anywhere. See
Deployment for platform-specific steps.