THE PLATFORM

A foundation,
not a constraint.

Bring content, rendering and integrations into a runtime you can understand—and adapt the parts that make your project different.

WHAT THE DOCUMENTATION DESCRIBES

The essentials, brought together.

Documented foundation

Content at the center

A Jackrabbit Oak repository provides the content foundation, with Sling’s resource model and repository permissions.

Documented foundation

Rendering with focus

HTL is the template language in the documented starter. Bundle-contributed static files sit alongside server-rendered content.

Documented foundation

An API for integrations

Typed HTTP modules use Jakarta REST, with separate management and public roots and runtime-generated OpenAPI documents.

Read the API guide
Documented foundation

An explicit runtime

Features name what the assembly includes. Add a capability deliberately instead of inheriting an ever-growing default.

Understand assembly
Documented foundation

A guarded request boundary

Admission, CORS, CSRF and an anonymous request budget have distinct responsibilities. Production hardening remains an operator task.

Read the security model
Confirm scope

Site and authoring foundations

The site model describes domain bindings, components, slots and templates. The authoring seam describes a replaceable demonstration shell.

Check verification scope

Add what matters.
Leave out what does not.

The feature model makes your runtime inventory an explicit decision. A downstream project can contribute its own bundles and configuration, with build-time analysis and a separate boot test.

Read the customization guide

An illustrative modular assembly: your project code and configuration above the ContentLIBRE foundation, which brings together content, the HTTP API and rendering on Apache Felix, Apache Sling and Jackrabbit Oak.

Scope is part of the product.

The documented starter does not include full-text search or document parsers by default. Clustering and a separate author/publish topology are not established by the implementation record. Evaluate those needs explicitly rather than assuming they are bundled in.

Start with the parts you can inspect.

Read the architecture, check capability status and decide where your project should extend the platform.