# Customization

> How to customize your htmlpress project.

Htmlpress exposes a handful of hooks for tailoring how your site looks, what it contains, and how files flow through the build. Each area has its own page.

## Topics

### [Configuration](/customization/configuration-file/)

`htmlpress.yaml` basics: `include`/`exclude` globs for your content.

### [Site Metadata](/customization/site-metadata/)

Site title, description, canonical URL, logo, and favicon.

### [Article Sections](/customization/article-sections/)

Group a folder's pages in the sidebar under its index page.

### [Article Patches](/customization/article-patches/)

Override a page's metadata from config, without editing the file.

### [External Links](/customization/external-links/)

Add external links to the header or the sidebar.

### [Syntax Themes](/customization/syntax-themes/)

Light and dark themes for code blocks.

### [Custom Routes](/customization/custom-routes/)

Give a page its own chrome with a layout in `.htmlpress/layouts/`.

### [Translations](/customization/translations/)

Publish the site in several languages, with a picker and fallbacks.

### [Versioning](/customization/versioning/)

Docs for several releases, with a section or a deploy per version.

### [Overriding/Escaping](/customization/overriding-escaping/)

Replace any built-in layout, stylesheet, script or component via `.htmlpress/`.

### [AI Agents](/customization/ai-agents/)

Markdown copies, `llms.txt`, content signals, and agent skills for AI agents.

### [Plugins](/customization/plugins/)

Add textlane's Markdown and HTML plugins to the page pipeline.
