HubSpot CMS for Developers key terms
HubSpot CMS for Developers · Get comfortable with the vocabulary.
- HubL
- Related: HubL tag, Template, Module
HubSpot's server-side templating language used inside CMS templates and modules. It renders dynamic content with tags written in curly braces and expressions in double curly braces, and it runs on the server before the page reaches the browser.
- HubL tag
- Related: HubL, HubL expression, Filter
A statement written in HubSpot's templating language using a single pair of curly braces, such as an if block, for loop, or include. Tags control logic and structure; they do not print values to the page on their own.
- HubL expression
- Related: HubL tag, Filter, Variable
A value printed to the page using double curly braces, such as a variable, function call, or filtered variable. Expressions output content; they do not control flow. They are the output half of the templating language.
- Filter
- Related: HubL expression, Variable
A pipe-applied modifier in a HubL expression that transforms a value before output, such as converting to lowercase, formatting a date, truncating text, or joining a list. Multiple filters can be chained left to right.
- Template
- Related: Module, Layout, Design Manager
An HTML file with HubL markup that defines the layout of a page or email. Developers build templates in the Design Manager, and marketers create pages from them. Templates usually include modules and extend a base layout.
- Module
- Related: Module field, fields.json, Theme
A reusable, editable content component with fields that editors fill in. Modules can be local to a template, global across pages, or part of a theme. Each module has an HTML file and a fields definition.
- Module field
- Related: Module, fields.json, Repeater field
A configurable input defined for a module, such as text, rich text, image, link, choice, or boolean. Field values are stored per instance and accessed in module HTML through the module object.
- fields.json
- Related: Module field, Module, Repeater field
The JSON file that defines a module's editable fields, including names, types, defaults, labels, and grouping. HubSpot reads it to render the editor sidebar and to make field values available to the module template.
- Repeater field
- Related: Module field, fields.json
A module field type that holds an ordered group of subfields so editors can add, remove, and reorder repeated content such as cards or FAQ items. Looping over the repeater outputs each set.
- Theme
- Related: Module, Theme inheritance, Design Manager
A packaged set of templates, modules, styles, and configuration files that defines a site's design system. Themes are uploaded and versioned together, and they can be extended or overridden without editing core files.
- Theme inheritance
- Related: Theme, Template
The mechanism by which a child theme reuses and overrides a parent theme's templates, modules, and styles. It lets developers customize a base theme while preserving shared code and receiving upstream updates.
- Design Manager
- Related: Template, Module, Theme
The HubSpot tool for browsing, creating, and editing templates, modules, themes, and stylesheets. It shows a file tree, a code editor, and a live preview, and it is the main workspace for CMS developers.
- Layout
- Related: Template, Block
A base template file that defines shared page structure like header, footer, and wrappers. Child templates extend it and fill named blocks, which reduces duplication across many page types.
- Block
- Related: Layout, Template
A named placeholder in a layout or parent template that a child template fills with its own content. Blocks support defaults and inheritance, letting child templates override only the sections they need.
- Include
- Related: HubL tag, Template
A HubL tag that inserts another template file's rendered output into the current template. It is used to share snippets like headers or cards without copying markup between files.
- Macro
- Related: HubL, Include
A reusable function defined in HubL with parameters and a body, callable elsewhere in templates. Macros reduce repetition for formatting or markup logic and can be shared through imported files.
- Variable
- Related: HubL expression, Context object, Filter
A named value stored in HubL using a set statement or supplied by HubSpot's context, such as page data or module fields. Variables can be printed, filtered, and passed into macros.
- Context object
- Related: Variable, Module field
A predefined data object available in templates, such as content, module, request, or site settings. It exposes page properties, field values, and environment data so templates can render dynamically.
- Content Hub
- Related: Design Manager, Theme
HubSpot's umbrella name for its content and CMS products, including website pages, blogs, and the developer tooling. It hosts the CMS where templates, themes, and modules are built and published.
- CMS Hub
- Related: Content Hub, Design Manager
The former name for HubSpot's content management product, now folded into Content Hub. Questions may use either name, but the underlying tools, templates, and hosting are the same.
- HubSpot CLI
- Related: Local development, Theme, Design Manager
A command-line tool for local CMS development. It authenticates to a portal, fetches and uploads themes and modules, watches files for changes, and supports local development servers for previewing work.
- Local development
- Related: HubSpot CLI, Theme
The workflow of editing theme files on your machine with your own editor and syncing them to a HubSpot portal using the CLI. It supports version control and faster iteration than editing in the browser.
- hs watch
- Related: HubSpot CLI, Local development
A CLI command that monitors a local directory and uploads changed files to the portal automatically. It keeps the remote theme in sync during development so previews reflect edits quickly.
- Sandbox
- Related: HubSpot CLI, Theme
A separate HubSpot portal used for development and testing without touching production content. Developers build and validate templates and modules there, then deploy the finished theme to the live portal.
- HubDB
- Related: Dynamic pages, HubL
A hosted relational-style table system inside HubSpot that stores structured content such as listings or catalogs. Templates query HubDB rows with HubL to render dynamic pages, and rows can drive dynamic page URLs.
- Dynamic pages
- Related: HubDB, Template
Pages generated from a data source, typically HubDB, where each row produces its own URL using a slug column. A single template renders all rows, which suits large catalogs and directories.
- Blog template
- Related: Context object, Template
A template type that renders blog listings and individual posts. It uses blog-specific context objects and tags to output post content, author data, tags, and pagination across the blog.
- Email template
- Related: Template, Module
A template type for marketing email, built with HubL and modules but subject to email-client constraints. It supports personalization tokens and must use table-based, inline-styled markup for reliable rendering.
- Personalization token
- Related: Email template, Context object
A placeholder that inserts contact or company property values into emails and pages, such as a first name. Tokens render per recipient or viewer and require a fallback for missing values.
- Site settings
- Related: Context object, Theme
Portal-level configuration for a domain, including global branding, favicon, header and footer code, and analytics. Templates read these values through context objects instead of hardcoding them.
- RequireJS
- Related: Template, Module
The module loader HubSpot uses to manage JavaScript dependencies on CMS pages. Templates can register scripts with HubSpot's require helpers so files load once and in dependency order.
- CSS and JS includes
- Related: RequireJS, Template
HubSpot functions and tags that register stylesheets and scripts on a page, handling ordering and deduplication. They replace raw link and script tags so assets load reliably across templates and modules.
- Serverless function
- Related: HubSpot CLI, API
A JavaScript function hosted by HubSpot and triggered by HTTP requests, used for custom endpoints, secrets, and integrations. Functions run outside templates and can be called from page scripts.
- CMS API
- Related: API key, HubDB
HubSpot's REST interface for programmatically managing site pages, blog posts, templates, and related content. It supports CRUD operations and is used for migrations, automation, and headless setups.
- Private app token
- Related: CMS API, HubSpot CLI
A scoped credential created in portal settings that authorizes API calls without a user login. Developers use it for CLI authentication and server-side integrations, granting only the scopes required.
- Module marketplace
- Related: Module, Theme
A catalog of prebuilt modules and themes that developers can install into a portal. Installed assets add files to the Design Manager and can be customized like any other module or theme.
- Drag and drop areas
- Related: Module, Template
Regions in a template where marketers can add, remove, and rearrange modules in the page editor. They make fixed templates flexible while keeping developers in control of available modules.
- Preview and debugging
- Related: Design Manager, Local development
The workflow of checking rendered output using preview modes, template errors, and browser tools. HubSpot surfaces HubL syntax errors and logs, and developers verify behavior across devices before publishing.