# astro-pigment

> An Astro documentation theme: dark mode, interactive playgrounds, SEO routes, and LLM endpoints in one integration.

- URL: https://evilmartians.com/opensource/astro-pigment
- GitHub: https://github.com/psd-coder/astro-pigment
- Website: https://astro-pigment.psdcoder.dev/
- Authors: Pavel Grinchenko

---

astro-pigment is a documentation theme for Astro. One integration call gives you a complete docs site from your Markdown: layout, navigation, table of contents, code highlighting, interactive playgrounds, and endpoints for LLMs and search engines.

* **One integration.** Rehype plugins, PostCSS, Shiki themes, the sitemap, and SEO routes are set up for you.
* **Theming from two numbers.** Set `theme.hue` and `theme.saturation`, and every color is derived in OKLCH. Dark mode has an auto, light, and dark toggle with no flash on load.
* **Interactive playgrounds.** A CodeMirror editor next to a sandboxed live preview that captures console output.
* **Built for agents.** `/llms.txt` and `/llms-full.txt` are generated from your Markdown, and the site can list the repo's agent skills with install commands for Claude Code, Codex, Cursor, and other agents.
* **Generated assets.** Social cards, favicons, `robots.txt`, and the sitemap come out of the box. Martian Grotesk and [Martian Mono](https://evilmartians.com/products/martian-mono) are bundled.

```js
// astro.config.mjs
import { defineConfig } from "astro/config"
import docsTheme from "astro-pigment"

export default defineConfig({
  site: "https://my-project.dev",
  integrations: [
    docsTheme({
      project: {
        name: "my-project",
        github: { user: "your-name", repository: "my-project" },
      },
      theme: { hue: 319, saturation: 66 },
    }),
  ],
})
```

The docs for [nanotags](https://nanotags.psdcoder.dev/), [datavolve](https://datavolve.psdcoder.dev/), [typed-channel](https://typed-channel.psdcoder.dev/), and astro-pigment itself are built with it. The full setup guide is at [astro-pigment.psdcoder.dev](https://astro-pigment.psdcoder.dev/).
