Components
The modular architecture of the Cultural Heritage Framework follows the idea of a separation of concerns. There are three types of components you should know: specific data models, independent helpers, and the project-specific sitepackage.

Overview of the Cultural Heritage Framework's modular components.
The main set of available extensions are data models organised around CHF Base, which provides core data structures. The base component also includes its own user interface library for the web that is designed to be accessible, atomic, responsive, and GDPR-compliant, as well as a few tools needed by a number of dependent extensions. Each of these components targets a highly specific data domain and includes data models, editing interfaces, standard templates, common serialisations like TEI XML and embedded metadata, data import options, and search configuration. The following extensions of this category are available:
- CHF Base (resources, locations, periods, and actors; partly inspired by TEI)
- CHF Bib (bibliographies and Zotero import; based on Zotero TEI)
- CHF Lex (lexicographic resources with dictionary and/or encyclopedic entries; based on DMLex)
- CHF Map (geodata and image maps; based on GeoJSON)
- CHF Gloss (terms and their explanations)
- CHF Pub (volumes and essays to model books, book series, blogs, and journals)
- CHF Object (physical objects and related events)
- CHF Media (image, video, and 3D files, galleries, and collections)
- Not in development yet: CHF Music (MEI data)
- Not in development yet: CHF Letter (correspondences)
In addition to these data models, three optional helpers are available. They provide single-purpose additions to TYPO3's functionality that are useful in a Digital Humanities-focused web app. Using these helpers may require a bit of configuration in accordance with their individual documentation. They may also be used without any of the CHF data models listed above:
- Not in development yet: ENDPT (SPARQL, OAI-PMH, and SRU endpoints)
- DSH (quality assurance for data, dashboards)
- VIS (a set of visualisations)
Last but not least, each project needs its own sitepackage. In theory, every aspect of the other extensions may be overwritten in this extension. In practice, it is typically used to include and configure the extensions you need and to adapt a few minor template elements. The CHF includes a boilerplate that you can simply copy and adapt to your needs.
- CHF Project (sitepackage boilerplate)
- CHF Container (sample Podman or Docker container configuration)