Glossary
Base
@shevky/base - shared utility package providing config, i18n, io, log, format, exec, and the plugin contract.
Build Pipeline
The sequential process in core/scripts/build.js that transforms source content into a deployable static site in dist/.
Canonical URL
Resolved absolute URL for a page, derived from front matter canonical field and identity.url.
Collection
A grouping of content files by shared metadata. Three types: tag, category, series. Built by ContentRegistry.buildCategoryTagCollections().
CollectionsByLang
Type Record<string, Record<string, CollectionEntry[]>>. Outer key is language, inner key is collection name, value is content entries.
Component
A Mustache template in src/components/, usable in both templates and Markdown content. Loaded with components/ key prefix.
Content File
A Markdown file with YAML front matter in src/content/. Parsed into ContentFile (header + body) at runtime.
Core
@shevky/core - the CLI, build pipeline, engines, registries, and content model package.
Engine
A processing class in core/engines/: PluginEngine, RenderEngine, MenuEngine, MetaEngine.
Front Matter
YAML metadata at the top of a Markdown file. Key fields: id, lang, slug, title, template, status, category, tags, series, schemaType.
Hook
A named plugin lifecycle event. Five hooks: dist:clean, assets:copy, content:load, content:ready, page:meta.
Layout
A top-level Mustache template in src/layouts/ defining the page HTML shell. Non-_ prefixed files.
Output Alias
Post-build path mapping (build.outputAliases), e.g., ~/404/ -> ~/404.html.
Page Registry
In-memory buffer for rendered pages, flushed to dist/ when the buffer limit is reached or at build end.
Partial
A reusable Mustache fragment. _-prefixed files in src/layouts/ (e.g., _header.mustache).
Plugin
An npm package exporting a PluginDefinition object. Discovered via plugins[] in site.json, loaded dynamically at build time.
Plugin Context
Object passed to hook handlers with config, logging, filesystem, path utilities, project paths, and hook-specific data.
Plugin Runtime Name
The name field exported by a plugin (e.g., "shevky-rss"). Used as the key in pluginConfigs and by config.get().
Registry
A class managing a collection of objects: PluginRegistry, ContentRegistry, TemplateRegistry, PageRegistry.
Schema Type
Content classification for structured data and rendering. Values: post, job-post, job-listing, not-found, page, home, contact, about, press, help, faq, collection, policy.
Structured Data
JSON-LD markup for search engines, generated by @shevky/plugin-open-graph.
Template
A Mustache file in src/templates/ defining content-area structure. Selected by the template front matter field.
View Payload
Data object passed to Mustache during layout rendering. Contains site data, menu, footer, i18n, page metadata, content HTML, and scripts.
Abbreviations
| Abbreviation | Meaning |
|---|---|
| SSG | Static Site Generator |
| OG | Open Graph |
| JSON-LD | JSON for Linked Data |
| i18n | Internationalization |
| SEO | Search Engine Optimization |
| RSS | Really Simple Syndication |
| ESM | ECMAScript Modules |