# apache/openoffice-org architecture

> Architecture diagram of the GitHub repository apache/openoffice-org, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-12). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/apache/openoffice-org
- Repository: https://github.com/apache/openoffice-org

## Overview

This repository is the content source for the Apache OpenOffice website. Its visitor-facing material spans product information, downloads, support, news, extensions, and localized pages. The README documents that JBake processes content using Groovy templates and copies assets into the baked site. Source excerpts were not provided, so the graph shows only these documented relationships; the content branches are represented without inferred runtime links.

Main entry points: [`templates`](https://github.com/apache/openoffice-org/tree/main/templates) (Groovy templates), [`content`](https://github.com/apache/openoffice-org/tree/main/content) (Core pages), [`templates/brand.gsp`](https://github.com/apache/openoffice-org/blob/main/templates/brand.gsp) (Brand template), [`templates/navigator.gsp`](https://github.com/apache/openoffice-org/blob/main/templates/navigator.gsp) (Navigator template)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_pages["Website content"]
  node_content["Core pages"]
  node_downloads["Downloads"]
  node_product["Product information"]
  node_support["Support and FAQs"]
  node_news["News"]
  node_extensions["Extensions"]
  node_localized["Localized pages"]
end

subgraph group_presentation["Site presentation"]
  node_templates["Groovy templates"]
  node_brand["Brand template<br/>[brand.gsp]"]
  node_navigator["Navigator template<br/>[navigator.gsp]"]
  node_ssi["SSI registrations<br/>[ssi_paths.gsp]"]
end

subgraph group_assets["Static assets"]
  node_assets["Static assets"]
end

subgraph group_delivery["Rendered site"]
  node_jbake["JBake"]
  node_site["Baked website"]
end

node_content -->|"processes pages"| node_jbake
node_templates -->|"renders with"| node_jbake
node_brand -->|"provides branding"| node_templates
node_navigator -->|"provides navigation"| node_templates
node_ssi -->|"registers includes"| node_templates
node_assets -->|"copies as-is"| node_jbake
node_jbake -->|"bakes"| node_site

click node_content "https://github.com/apache/openoffice-org/tree/main/content"
click node_downloads "https://github.com/apache/openoffice-org/tree/main/content/download"
click node_product "https://github.com/apache/openoffice-org/tree/main/content/product"
click node_support "https://github.com/apache/openoffice-org/tree/main/content/FAQs"
click node_news "https://github.com/apache/openoffice-org/tree/main/content/news"
click node_extensions "https://github.com/apache/openoffice-org/tree/main/content/extensions"
click node_localized "https://github.com/apache/openoffice-org/tree/main/content"
click node_templates "https://github.com/apache/openoffice-org/tree/main/templates"
click node_brand "https://github.com/apache/openoffice-org/blob/main/templates/brand.gsp"
click node_navigator "https://github.com/apache/openoffice-org/blob/main/templates/navigator.gsp"
click node_ssi "https://github.com/apache/openoffice-org/blob/main/templates/ssi_paths.gsp"
click node_assets "https://github.com/apache/openoffice-org/tree/main/assets"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_content,node_downloads,node_product,node_support,node_news,node_extensions,node_localized toneBlue
class node_templates,node_brand,node_navigator,node_ssi toneAmber
class node_assets toneMint
class node_jbake,node_site toneRose
```

## Components

### Website content

- [Core pages](https://github.com/apache/openoffice-org/tree/main/content): `content`
- [Downloads](https://github.com/apache/openoffice-org/tree/main/content/download): `content/download`
- [Product information](https://github.com/apache/openoffice-org/tree/main/content/product): `content/product`
- [Support and FAQs](https://github.com/apache/openoffice-org/tree/main/content/FAQs): `content/FAQs`
- [News](https://github.com/apache/openoffice-org/tree/main/content/news): `content/news`
- [Extensions](https://github.com/apache/openoffice-org/tree/main/content/extensions): `content/extensions`
- [Localized pages](https://github.com/apache/openoffice-org/tree/main/content): `content`

### Site presentation

- [Groovy templates](https://github.com/apache/openoffice-org/tree/main/templates): `templates`
- [Brand template](https://github.com/apache/openoffice-org/blob/main/templates/brand.gsp): `templates/brand.gsp`
- [Navigator template](https://github.com/apache/openoffice-org/blob/main/templates/navigator.gsp): `templates/navigator.gsp`
- [SSI registrations](https://github.com/apache/openoffice-org/blob/main/templates/ssi_paths.gsp): `templates/ssi_paths.gsp`

### Static assets

- [Static assets](https://github.com/apache/openoffice-org/tree/main/assets): `assets`

### Rendered site

- **JBake**
- **Baked website**

## Connections

- Core pages → JBake: processes pages (evidence: `README.md`)
- Groovy templates → JBake: renders with (evidence: `README.md`)
- Brand template → Groovy templates: provides branding (evidence: `README.md`)
- Navigator template → Groovy templates: provides navigation (evidence: `README.md`)
- SSI registrations → Groovy templates: registers includes (evidence: `README.md`)
- Static assets → JBake: copies as-is (evidence: `README.md`)
- JBake → Baked website: bakes (evidence: `README.md`)
