Stackable is a WordPress block plugin (Gutenberg) that ships a design system of blocks, global settings, and a design library.
The free product is the core block set and editor tooling on WordPress.org.
Premium deepens the same spine with Dynamic Content, conditional display, extra blocks/features, and Freemius licensing under pro__premium_only/.
Stackable: The WordPress plugin product (this codebase). Avoid: Stackable Ultimate Gutenberg Blocks (except plugin slug / marketing titles), SUG B (as casual name)
Block:
A stackable/* Gutenberg block under src/block/<name>/ (V3).
Avoid: ugb block (v2 namespace - deprecated), "element" alone when you mean a block
Block component:
Reusable editor building block under src/block-components/ (alignment, image, typography, style, etc.) composed into blocks.
Avoid: component alone when you mean a WordPress @wordpress/components control
Design Library: In-editor library for inserting designs, patterns, pages, and related layouts. Avoid: pattern library alone (too vague), template kit (unless marketing copy)
Global settings:
Site-wide Stackable design tokens and controls (colors, typography, spacing, block styles, color schemes, presets) under src/plugins/global-settings/ and related PHP.
Avoid: theme.json (WP core), customizer (unless literally that UI)
Global Block Styles: Reusable named styles applied across matching blocks (premium-capable surface in the design system). Avoid: CSS class stylesheet alone, theme style variation (WP FSE)
Dynamic Content (premium): Resolve fields / post data into block attributes and frontend output. Avoid: ACF alone (one source among many), shortcodes (unless documenting a specific bridge)
Conditional display (premium): Show/hide blocks based on rules (user, query, custom fields, etc.). Avoid: visibility CSS alone, display conditions (unless matching UI copy)
uniqueId: Per-block CSS/instance identifier Stackable uses for scoped styles. Avoid: clientId alone (editor-only WP id), block id (ambiguous)
STACKABLE_BUILD:
PHP constant (free | premium) flipped by build scripts; gates loading pro__premium_only/.
Avoid: BUILD_TYPE alone, isPro (runtime localize derived from build + Freemius plan)
STACKABLE_I18N:
Text domain constant: stackable-ultimate-gutenberg-blocks.
Avoid: inventing a shorter domain string in new strings
sugb_fs / Freemius: Licensing and updates for premium builds via Freemius SDK helpers in this repo. Avoid: inventing a custom lite license stack beside Freemius in this repo
~stackable:
JS path alias to src/ (see jsconfig.json).
Avoid: relative ../../../ climbs for cross-folder imports when the alias fits
Free: Directory-safe plugin tree: core blocks, editor UI, design library (free surface), global settings, WordPress.org distribution. Avoid: lite, basic tier (as the technical name)
Premium:
Code under pro__premium_only/ loaded when STACKABLE_BUILD === 'premium' and Freemius premium gates allow it.
Avoid: pro features sprinkled in the free tree
V2 / deprecated:
Legacy ugb/* blocks and src/deprecated/ paths kept for migration and recovery - not the default for new work.
Avoid: extending v2 as the primary implementation path