Glossary
This glossary defines Heine's stable public vocabulary. A guide introduces a term in context before relying on it; this page is a concise place to return when reading configuration, templates, diagnostics, or the reference.
Site and output
Base path
The absolute URL-directory prefix below which a site is deployed, configured
as site.base_path. For example, /guide/ makes generated absolute URLs begin
with /guide/; it does not change the source layout.
Full build
A normal Heine build. It creates and checks a complete replacement output tree before publishing it, so renamed and deleted source files disappear from generated output.
Draft
A page declared with draft = true. Ordinary builds exclude it before
resolving page relationships; heine serve --drafts includes it in a local
preview. Draft state is page-local and has no inherited false form. See the
drafts guide.
Generated output
The files Heine writes below build.output_dir, public/ by default. It is a
managed tree: do not maintain unrelated files there by hand.
Managed output
Generated output that Heine has marked as its own. Heine will replace it on a
full build. --clean-output explicitly adopts an existing non-empty output
directory once.
Output path
A checked path relative to generated output, such as blog/post.html.
Pages, copied assets, deployment files, license texts, and generated resources
all make output claims; Heine rejects collisions before writing.
__heine/
A URL and output-path namespace reserved for Heine’s development-server endpoints. It is never published as site output. Pages, copied assets, deployment files, and generated resources cannot claim a path inside it, preventing a site from colliding with the server’s own routes.
Quick build
An intentionally incomplete in-place update selected with --quick. It is
useful for changed present inputs, but does not detect every relationship,
configuration, template, rename, or deletion change. Use a full build after
those changes.
Relative URL
A URL from one generated page to another generated resource. Heine exposes it
as relative_url; unlike url, it does not begin with site.base_path.
Site root
The project directory containing heine.toml, content/, and templates/.
Optional roots such as data/, locales/, deploy/, and LICENSES/ also
live beside them.
Site origin
The scheme, host, and optional port configured as site.origin, for example
https://example.org. It has no deployment path; combine it with the base path
when a generated document needs an absolute canonical URL.
Sitemap
An opt-in XML discovery document generated from Heine's rendered-output
inventory. It lists canonical page URLs for search engines; it does not affect
whether a page is rendered or reachable. A page can opt out with
sitemap = false; a descriptor's [pages] sitemap = false establishes a
recursive, non-overridable boundary for its descendant pages.
Atom feed
An opt-in XML syndication document generated once per locale from one configured collection. It contains chronological page summaries and canonical page links. Feed entry requirements are checked during the build; see the Atom-feed guide.
Search index
An opt-in locale-local generated JSON document selected from one or more collections. Heine supplies checked source-derived page facts and output URLs; the site supplies the browser search library, ranking, and interface. See the search-index guide.
Publication chronology
Optional page published and updated local date-times. They must include a
calendar date and time without an offset; Heine resolves them through the
site-wide editorial time zone. published records when
a page became public, while updated records a later reader-meaningful change
and cannot precede published.
Editorial time zone
The site-wide IANA zone in site.time_zone used to resolve authored local
published and updated times. Heine uses its bundled time-zone database, so
the resulting UTC timestamps do not depend on the build machine.
Authored files and inputs
Asset sidecar
A file named <asset filename>.license beside a copied asset. It declares
REUSE-style SPDX copyright and licensing facts for that asset; it is not itself
published as an asset.
Licensing group
One explicit [[licensing.groups]] declaration in heine.toml. It assigns
the same SPDX facts to an exact non-empty list of copied-asset output paths.
It is an alternative to individual sidecars for a coherent upstream or
first-party asset set, not a directory rule, glob, or template-facing object.
Copied asset
A regular file below content/ that is neither a .page file nor a file
declared by a page's [content] table. Heine copies it to its corresponding
generated output path. Templates use asset() to link to one safely.
Declared content file
A file named by a page's [content] table. Heine reads it as page content but
does not publish it as an asset.
Deployment file
A regular file below optional deploy/. Heine copies it unchanged to the
matching output-root path. Deployment files are for host configuration and
verification, not for files a page links through asset().
Directory descriptor
A non-published _directory.toml file below a locale tree. It provides the
directory's metadata and recursive defaults or requirements for descendant
pages.
License text
A text file in optional LICENSES/, named for an SPDX identifier or local
LicenseRef-…. Heine publishes it below <build.output_dir>/LICENSES/ and
checks it against every resolved asset licensing declaration that names it.
Locale tree
The content/<locale>/ directory containing one configured locale's pages,
declared content, and locale-specific assets. The default locale has unprefixed
URLs; other locale trees receive a URL prefix.
Locale data
Structured data loaded from data/<locale>/ for the locale currently being
rendered. Templates access it through locale_data; it is separate from
shared data and has no fallback.
Page file
A .page TOML file below a locale tree. It declares a page's template,
metadata, optional content inputs, and relationships. A rendered page normally
becomes one output file.
Page directory
The locale-relative directory containing a page file. Templates receive it as
page.dir; the locale-root directory is the empty string. page.subdirs is
the sorted list of its immediate source subdirectories.
Summary
Optional authored page or directory metadata used for a short description in a
listing. It is written as summary in TOML and exposed as page.summary;
Heine never extracts it from Markdown.
Table of contents
An optional, page-owned view of headings from one selected declared Markdown
file. Configure it with [toc] on a page or [pages.toc] in a directory
descriptor. Templates read page.toc and render the selected source with
markdown(content="…"), which gives its headings matching fragment IDs.
Margin footnote
An optional, page-owned presentation of ordinary Markdown footnotes from one selected declared Markdown input. Heine checks every reference and definition, then renders each reference as a local note instance after its containing paragraph or heading. A template and its CSS decide the visual margin or below-prose layout. See margin footnotes.
Authors
An optional non-empty list of human names written as authors = ["Name"] on
a page or inherited from [pages] authors in a directory descriptor. Atom
feeds require every selected entry to resolve authors; the feed checks that
independently of directory requirements.
Weight
An authored integer used for sibling or collection ordering. weight = false
excludes a non-index page from sibling ordering; collection weight ordering
requires every member to have a numeric weight.
Sibling navigation
The deterministic sequence of rendered, numeric-weight pages in one page
directory and locale. It is ordered by weight, then page ID. siblings()
returns the other IDs in the same sequence, while sibling_neighbors()
returns the immediate before and after pages. It is independent of
collections.
Template
A Tera2 file below templates/ that renders a page or another named
generated resource. Its logical template name is its path below templates/,
such as post.tera.
Versioned asset
A copied asset with .v<positive integer> before its extension, such as
styles.v2.css. asset(id="assets/styles.css") and the latest filter select
the highest available version. This is a naming convention for asset selection,
not a separate directory or build step.
Identity and links
Asset ID
The literal path used to identify a copied asset within its locale's content
tree, without a leading slash; for example, css/site.css. asset() checks
this ID and returns URLs, integrity metadata, and image dimensions when known.
Page ID
The literal path of a .page file relative to its locale tree, without the
.page extension; for example, blog/first-post. page() checks this ID
and resolves an exact rendered page.
URL
The absolute-path form Heine exposes as url. It begins with the configured
base path, such as /guide/blog/first-post.html; it is not a full site origin.
Localization
Counterpart
A rendered page in another locale explicitly connected by the same
translationid. Heine never infers counterparts from matching filenames or
directories.
Default locale
The configured locale whose generated URLs are not prefixed by a locale code. Every site has exactly one default locale.
Locale
A configured canonical BCP-47 language identifier, such as en, de, or
ar. It has a configured writing direction and one required content source
tree.
Translation ID
An opaque page metadata value, translationid, that explicitly groups known
counterpart pages across locales. A group may be partial but contains at most
one page for each locale.
Listings
Collection
A configured, locale-local ordered set of rendered pages. Pages opt in through membership; a collection itself does not generate output.
Collection neighbors
The immediate before and after members around the current authored page
in one collection's resolved locale-local order. Templates obtain them with
collection_neighbors(name="…"); this is separate from directory sibling
navigation.
Listing page
An authored rendered page that reads a collection. It may enable pagination, in which case its own output is the first slice and Heine creates later pages.
Pager
One generated later output of a paginated listing. It uses the authored first listing page's template model plus its pagination view.
Taxonomy
A configured classification built from one collection. It turns literal terms assigned by member pages into generated taxonomy-index and term-listing pages.
Series
A configured, locale-local ordered reading sequence. Pages declare a positive position for each Series they join. A Series produces an index and listing pages, but does not select a collection or alter taxonomy, feed, or search membership. See the Series guide.
Term
A literal taxonomy value such as Rust or Static sites. A term is both its
display name and one route component; Heine does not silently slugify it.
Template boundary
Filter
A Tera operation applied with |, such as value | markdown. Heine provides
filters for Markdown rendering and selected checked resource operations.
Render-facing value
Data Heine makes available to Tera, such as page, data,
locale, or pagination. Templates do not receive mutable internal site
state or arbitrary filesystem access.
Template function
A named Heine operation called from a Tera template, such as asset(),
page(), collection(), t(), or format_date(). Fixed arguments are
checked at the template call site.