﻿---
title: Assembled documentation
description: Assembled documentation is the product of building many documentation sets and weaving them into a global navigation to produce the fully assembled documentation...
url: https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/building-blocks/assembled-documentation
---

# Assembled documentation
Assembled documentation is the product of building many [documentation sets](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/building-blocks/documentation-set) and weaving them into a global navigation to produce the fully assembled documentation site.

## How it works

The assembler:
1. Clones multiple documentation repositories.
2. Reads the [configuration files](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/configure/site) and builds [a global navigation](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/configure/site/navigation).
3. Builds each documentation set independently using the global configuration and navigation to inform path prefixes.
4. Produces a unified documentation website.


## Configuration

Assembled documentation is configured through the site configuration, which defines:
- [assembler.yml](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/configure/site): Which repositories to include and [their branching strategy](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/contribute/branching-strategy).
- [navigation.yml](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/configure/site): Navigation and url prefixes for TOC's.
- [versions.yml](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/configure/site/versions): Defines the various versioning schemes of products/solutions being documented.
- [products.yml](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/configure/site/products): Defines the product catalog (id, name) and ties it to a specific versioning scheme.

Refer to [Site Configuration](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/configure/site) for details on configuring assembled documentation.
<important>
  The `docs-builder` command makes no assumptions about how repositories, products, solutions and versions tie into each other.
</important>


## Build process

The typical build process for assembled documentation consists of three steps:
1. Clone all configured repositories using `docs-builder assembler clone`.
2. Build all documentation sets using `docs-builder assembler build`.
3. Serve the documentation on http://localhost:4000 using `docs-builder assembler serve`.

This uses the embedded configuration files inside the `docs-builder` binary. To build a specific configuration:
1. Fetch the latest config to `$(pwd)/config` `docs-builder assembler config init --local`.
2. Clone all configured repositories using `docs-builder assembler clone --local`.
3. Build all documentation sets using `docs-builder assembler build --local`.
4. Serve the documentation on http://localhost:4000 using `docs-builder assembler serve`.


## Related concepts

- [Documentation Set](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/building-blocks/documentation-set): The individual units being assembled.
- [Distributed Documentation](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/building-blocks/distributed-documentation): How documentation sets work independently.
- [Link Catalog](https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2455/building-blocks/link-catalog): How the assembler knows what to include.