Competera UI naming registry

Reusable section and module naming for Figma, HubSpot, and React

A section-first registry that reflects the final agreed S/M/U naming, current Industry template structure, reusable section families, and controlled section variants.

1general detail-page template
10reusable section families
14approved section templates including variants
24named module and nested UI roles

Final naming strategy

Use the object type, stable family number, mnemonic abbreviation, separator, and full searchable name. Shared modules retain their own low-number utility family.

Section-first architecture

A Figma S maps to a reusable HubSpot section template. Modules live inside the section and control editable content.

Mnemonic after the number

S120MG identifies a section, family 120, and Media Grid even before the full label is visible.

General structural names

Use Media Grid, not Platform Capabilities; use Alternating Media, not Use Cases.

Text remains searchable

The full label follows the pipe: S120MG | Media Grid. IDs never replace the human-readable name.

Cards are usually U items

A repeated card inside one module is a nested UI component, not a standalone HubSpot picker module.

Variants stay controlled

Use -A/-B only when section structure materially changes, not when content or item count changes.

T010DP | Detail PageT template · 010 stable family · DP Detail Page mnemonic.
S100H | HeroS reusable HubSpot section template. Layout type is configuration or an approved suffix variant.
M010SH | Section HeadingM shared editable HubSpot module reused by multiple section families.
M120MG | Media GridA section-family module uses the same family number and mnemonic when it represents the complete editable block.
U120MC | Media CardU nested React component or repeater item hidden from the general module picker.
S175CB-B | CTA Banner — VisualSuffixes are reserved for approved structural variants, not content count or background color.
Deprecated aliases: generic names, content-specific names, duplicate “(1)” filenames, inconsistent M/S usage, and encoding-corrupted names such as S-╨íH-01 remain searchable aliases only. They should not be used for new Figma frames, HubSpot labels, folders, or Jira tasks.

Mnemonic abbreviation dictionary

Abbreviations are deliberately short, uppercase, and attached to the family number. The full text label remains the source of truth for human understanding and search.

CodeMeaning
DPDetail Page
HHero
HCHero Content
HVHero Visual
SHSection Heading
MSMetrics Strip
MCMetric Card or Media Card — resolved by family number and full label
MGMedia Grid
FGFeature Grid
FCFeature Card
PJPricing Journey
JCJourney Card
AMAlternating Media
MRMedia Row
AGAsymmetric Grid
CCContent Card
SPSocial Proof
RSReview Strip
RBReview Badge
LCLogo Cloud
ACAward Card
CBCTA Banner
VBVisual Board
FAFAQ Accordion
FIFAQ Item

HubSpot implementation hierarchy

The section and module layers are both retained, even when a section contains only one primary module.

Figma S → HubSpot section

The section governs background, width, rows, columns, spacing, responsive order, and approved module placement.

Figma M → HubSpot module

The module owns editable fields, repeaters, images, links, rich text, and behavior. Internal-only modules can be hidden from the picker.

Repeated card → U component

Cards and items rendered by a repeater are nested React components. Editors manage them through the parent module.

Editor entry point

Content managers should primarily use Add section, then edit the contained modules without rebuilding the layout manually.

Template family

The attached Industry page becomes an approved instance of a more reusable detail-page template.

Template family T010DP

T010DP | Detail Page

Reusable long-form page template for industry, solution, persona, use-case, and product-detail narratives. Global header and footer remain inherited from the base layout; approved sections are inserted inside the drag-and-drop area.

FigmaT010DP / Detail Page / Desktop
HubSpotT010DP | Detail Page
Templatetemplates/t010dp-detail-page.hubl.html
Reactcomponents/pages/T010DPDetailPage
Industry pages Solution pages Persona pages Use-case pages Product narratives
Live T010DP composition sample

Reusable detail-page template

Approved sections and modules compose into one scalable content system.

Pricing dashboard
50+
Organizations
Metric 1
6%
Margin uplift
Metric 2
100%
ROI
Metric 3
95%
Optimal range
Metric 4

Reusable section registry

Each card below documents the agreed registry entry and renders compact previews from the real HubSpot section partials and React modules instead of screenshot assets.

HubSpot section family S100H

S100H | Hero

Generalize
Designer / legacy aliases: S-H-01, S-H-02; S100H | Hero

General hero section family supporting split, centered, text-only, and visual-led compositions without encoding one layout into the canonical name.

Final decision

Hero is the reusable family. Split composition presentation is a controlled layout option or structural variant. The optional visual is named Hero Visual because it may contain a dashboard, illustration, image, animation, or video—not only a product screenshot.

S100H | HeroAdd section

Contained HubSpot modules

  • M100HC | Hero ContentEyebrow, heading, description, heading, description, optional primary CTA, alignment, and content width.
  • M100HV | Hero VisualEditable image or dashboard visual with alt text and optimized responsive output.
FigmaS100H / Hero / Base; optional layout variants
HubSpotsections/S100H-Hero.hubl.html
Codebasemodules/M100HCHeroContent; modules/M100HVHeroVisual
Searchhero, split hero, centered hero, visual hero, banner, CTA
Split compositionHero visual moduleResponsive stackingCTA enabled/disabledResponsive stack order
HubSpot section family S110MS

S110MS | Metrics Strip

Simplify
Designer / legacy aliases: M-N01, M-N01-2, M-N01-3, M-N01-4; M110ML | Metrics List

Single-row proof or KPI section containing repeatable metric cards and responsive stacking behavior.

Final decision

The section and parent module use the same clear name. Each repeatable unit is consistently classified as a Metric Card, while two to five cards remain configuration rather than separate variants.

S110MS | Metrics StripAdd section

Contained HubSpot modules

  • M110MS | Metrics StripRepeatable metrics collection controlling columns, dividers, alignment, responsive wrapping, and optional card icons.

Nested React UI components / repeater items

  • U110MC | Metric CardMetric value, stat label, optional qualifier, description, and optional icon.
FigmaS110MS / Metrics Strip / Base
HubSpotsections/S110MS-Metrics-Strip.hubl.html
Codebasemodules/M110MSMetricsStrip; components/U110MCMetricCard
Searchmetrics strip, KPI, stats, numbers, proof, metric cards
2–5 metric cardsOptional iconDividers on/offCenter/left alignment
HubSpot section family S120MG

S120MG | Media Grid

Reuse
Designer / legacy aliases: S-D-01, S-D-02, D02; M-D-01, M-D-03, M-D-04

General image-led card grid for capabilities, services, product areas, categories, benefits, or related content.

Final decision

Page-specific wording such as Platform Capabilities is removed. One shared Section Heading module provides the title and description, while the Media Grid module owns the repeatable cards.

S120MG | Media GridAdd section

Contained HubSpot modules

  • M010SH | Section HeadingShared heading module: optional eyebrow, title, description, heading level, alignment, and content width.
  • M120MG | Media GridRepeatable media cards, column count, card alignment, image ratio, and responsive behavior.

Nested React UI components / repeater items

  • U120MC | Media CardImage or media, title, description, optional text link, and optional CTA.
FigmaS120MG / Media Grid / Base
HubSpotsections/S120MG-Media-Grid.hubl.html
Codebasemodules/M010SHSectionHeading; modules/M120MGMediaGrid; components/U120MCMediaCard
Searchmedia grid, media cards, image cards, capabilities, services, categories
1–6 cardsOptional card CTAOptional rich-text linkOptimized media images
HubSpot section family S130FG-A/B

S130FG-A/B | Feature Grid

Variants
Designer / legacy aliases: S-I-01, S-I-02; M-I-01…M-I-16

Icon-led or text-led feature grid for benefits, principles, differentiators, reasons, or service attributes.

Final decision

The card schema is shared. Standard and Extended are approved structural section variants; card count, content length, and optional fields do not create new component families.

S130FG-A/B | Feature GridAdd section

Contained HubSpot modules

  • M010SH | Section HeadingShared title and description above the grid.
  • M130FG | Feature GridRepeatable features plus a restricted standard/extended layout configuration.

Nested React UI components / repeater items

  • U130FC | Feature CardOptional icon, eyebrow, title, description, and optional link.
FigmaS130FG-A / Feature Grid / Standard; S130FG-B / Feature Grid / Extended
HubSpotsections/S130FG-B-Feature-Grid-Extended.hubl.html; Standard is rendered through the same M130FG configuration
Codebasemodules/M130FGFeatureGrid; components/U130FCFeatureCard
Searchfeature grid, benefit cards, icon cards, reasons, differentiators
Variant A: StandardVariant B: ExtendedOptional iconOptional link
HubSpot section family S140PJ

S140PJ | Pricing Journey

Rename
Designer / legacy aliases: S-PJ-01, S-PJ-02; M-PJ-*; S140JS | Journey Steps

Connected pricing stages for the Competera pricing journey, maturity model, or related pricing transformation narrative.

Final decision

The current component is specifically designed and implemented for the pricing journey, so the final agreed name remains Pricing Journey. Repeated stages are Journey Cards.

S140PJ | Pricing JourneyAdd section

Contained HubSpot modules

  • M010SH | Section HeadingShared title and description above the journey.
  • M140PJ | Pricing JourneyOrdered repeatable journey stages, connectors, and responsive orientation.

Nested React UI components / repeater items

  • U140JC | Journey CardStage icon, title, description, supporting text, and optional link.
FigmaS140PJ / Pricing Journey / Base
HubSpotsections/S140PJ-Pricing-Journey.hubl.html
Codebasemodules/M140PJPricingJourney; components/U140JCJourneyCard
Searchpricing journey, pricing maturity, journey cards, stages, roadmap
Five-stage desktop rowResponsive wrapping1–5 Journey CardsControlled card accents
HubSpot section family S150AM

S150AM | Alternating Media

Keep
Designer / legacy aliases: S-CH-01; M-CH-01…M-CH-06; Zigzag Media

Professional alternating text-and-media layout for use cases, features, stories, workflows, outcomes, or process explanations.

Final decision

Alternating Media is the canonical industry-standard name. The module automatically alternates media position, while each repeated full-width unit remains a Media Row.

S150AM | Alternating MediaAdd section

Contained HubSpot modules

  • M010SH | Section HeadingShared title and description above the rows.
  • M150AM | Alternating MediaRepeatable rows with automatic left/right sequencing and controlled responsive order.

Nested React UI components / repeater items

  • U150MR | Media RowRich text, optional eyebrow, title, CTA, image or video, and media alignment.
FigmaS150AM / Alternating Media / Base
HubSpotsections/S150AM-Alternating-Media.hubl.html
Codebasemodules/M150AMAlternatingMedia; components/U150MRMediaRow
Searchalternating media, alternating rows, zigzag layout, image and text, split content
Automatic alternationEditable imageOptional CTAMobile text-first order
HubSpot section family S160AG-L/T

S160AG-L/T | Asymmetric Grid

Merge
Designer / legacy aliases: Case Studies grid; Frame 2610069; S180EM | Editorial Mosaic

Shared asymmetric content-card family for case studies, articles, news, podcasts, glossary entries, campaigns, and other featured editorial content.

Final decision

Editorial Mosaic is not a separate component family because it reuses the same asymmetric layout. Logo Overlay and Text Overlay are controlled section variants using one module and one Content Card component.

S160AG-L/T | Asymmetric GridAdd section

Contained HubSpot modules

  • M010SH | Section HeadingShared title, description, and optional archive link.
  • M160AG | Asymmetric GridRepeatable cards, featured placement, overlay mode, source mode, and responsive grid geometry.

Nested React UI components / repeater items

  • U160CC | Content CardImage, tag, title, excerpt, optional logo, result data, metadata, and link.
FigmaS160AG-L / Asymmetric Grid / Logo Overlay; S160AG-T / Asymmetric Grid / Text Overlay
HubSpotsections/S160AG-L-Asymmetric-Grid-Logo-Overlay.hubl.html; sections/S160AG-T-Asymmetric-Grid-Text-Overlay.hubl.html
Codebasemodules/M160AGAsymmetricGrid; components/U160CCContentCard
Searchasymmetric grid, editorial grid, case studies, resources, articles, podcasts, news
Logo OverlayText OverlayManual/JSON/HubDB/dynamic sourceFeatured card geometry
HubSpot section family S170SP-A/B

S170SP-A/B | Social Proof

Variants
Designer / legacy aliases: S-ACH-01; review strip, logo cloud, results metrics, awards

Trust-building section family combining reviews, logos, measurable results, awards, certifications, and proof statements.

Final decision

Reviews and Results are structurally different section variants but belong to one Social Proof family. Existing reusable Logo Cloud and Metrics Strip modules are composed rather than duplicated.

S170SP-A/B | Social ProofAdd section

Contained HubSpot modules

  • M170RS | Review StripCompact review-platform pill or badge strip used by the Reviews variant.
  • M170LC | Logo CloudExisting shared logo-scroller module with the Social Proof editor label.
  • M010SH | Section HeadingShared heading used by the Results variant.
  • M110MS | Metrics StripReused quantitative metrics row used by the Results variant.
  • M170SP | Social ProofRepeatable award, certification, analyst, or proof cards.

Nested React UI components / repeater items

  • U170RB | Review BadgeReview-platform logo, rating, review count, and supporting trust text.
  • U110MC | Metric CardReused metric unit from the Metrics Strip family.
  • U170AC | Award CardAward or certification icon, title, supporting text, and optional link.
FigmaS170SP-A / Social Proof / Reviews; S170SP-B / Social Proof / Results
HubSpotsections/S170SP-A-Social-Proof-Reviews.hubl.html; sections/S170SP-B-Social-Proof-Results.hubl.html
Codebasemodules/M170RSReviewStrip; modules/LogoCloud as M170LC; modules/M110MSMetricsStrip; modules/M170SPSocialProof
Searchsocial proof, reviews, logo cloud, results, awards, certifications, trust
Variant A: ReviewsVariant B: ResultsReusable Metrics StripReusable Logo Cloud
HubSpot section family S175CB-A/B

S175CB-A/B | CTA Banner

Consolidate
Designer / legacy aliases: M-CTA, M-CTA-01; S175GC | Gradient CTA; S176VC | Visual CTA

Reusable conversion banner with shared content and two controlled structures: Standard and Visual.

Final decision

Gradient is a background style, not a separate component family. Both layouts use one CTA Banner module; the Visual variant adds an optional Visual Board. Background style remains a module setting.

S175CB-A/B | CTA BannerAdd section

Contained HubSpot modules

  • M175CB | CTA BannerEyebrow, heading, description, primary and optional secondary CTA, background style, and optional visual data.

Nested React UI components / repeater items

  • U175VB | Visual BoardExtended dashboard, product, image, or campaign visual used only by the Visual section variant.
FigmaS175CB-A / CTA Banner / Standard; S175CB-B / CTA Banner / Visual
HubSpotsections/S175CB-A-CTA-Banner-Standard.hubl.html; sections/S175CB-B-CTA-Banner-Visual.hubl.html
Codebasemodules/M175CBCTABanner; components/U175VBVisualBoard
SearchCTA banner, conversion banner, visual CTA, gradient CTA, call to action
Variant A: StandardVariant B: VisualSolid/gradient backgroundCTA enabled/disabled
HubSpot section family S190FA

S190FA | FAQ Accordion

Keep
Designer / legacy aliases: S-FAQ-01; WideFaqSection

Accessible accordion section for frequently asked questions, product details, implementation notes, or structured disclosure content.

Final decision

The purpose is already general. The existing FAQ implementation is reused with the editor-facing M190FA label; each repeated accordion entry is a FAQ Item.

S190FA | FAQ AccordionAdd section

Contained HubSpot modules

  • M190FA | FAQ AccordionSection heading, repeatable questions and answers, schema settings, and accessible interaction behavior.

Nested React UI components / repeater items

  • U190FI | FAQ ItemQuestion, rich-text answer, expanded state, and accessibility bindings.
FigmaS190FA / FAQ Accordion / Base
HubSpotsections/S190FA-FAQ-Accordion.hubl.html
Codebasemodules/WideFaqSection with editor label M190FA | FAQ Accordion; nested U190FI item
SearchFAQ, accordion, questions, disclosure, support
FAQ schemaSingle-item accordionRich-text answers + FAQ schemaAccessible keyboard behavior

Registry summary

Compact cross-system reference for design, development, QA, content operations, and Jira task naming.

Section templateContained modulesNested UISearch keywords
S100H | HeroM100HC | Hero Content
M100HV | Hero Visual
hero, split hero, centered hero, visual
S110MS | Metrics StripM110MS | Metrics StripU110MC | Metric Cardmetrics, KPI, stats, proof
S120MG | Media GridM010SH | Section Heading
M120MG | Media Grid
U120MC | Media Cardmedia grid, capabilities, services, cards
S130FG-A/B | Feature GridM010SH | Section Heading
M130FG | Feature Grid
U130FC | Feature Cardfeatures, benefits, icon cards
S140PJ | Pricing JourneyM010SH | Section Heading
M140PJ | Pricing Journey
U140JC | Journey Cardpricing journey, maturity, stages
S150AM | Alternating MediaM010SH | Section Heading
M150AM | Alternating Media
U150MR | Media Rowalternating media, zigzag, image and text
S160AG-L/T | Asymmetric GridM010SH | Section Heading
M160AG | Asymmetric Grid
U160CC | Content Cardcase studies, resources, articles, news
S170SP-A/B | Social ProofM170RS | Review Strip
M170LC | Logo Cloud
M010SH | Section Heading
M110MS | Metrics Strip
M170SP | Social Proof
U170RB | Review Badge
U110MC | Metric Card
U170AC | Award Card
reviews, logos, results, awards, trust
S175CB-A/B | CTA BannerM175CB | CTA BannerU175VB | Visual BoardCTA, conversion, gradient, visual
S190FA | FAQ AccordionM190FA | FAQ AccordionU190FI | FAQ ItemFAQ, accordion, questions

Implementation rules

Use these rules when creating the actual Figma components, HubSpot section templates, React modules, nested UI components, and content documentation.

HubSpot section labels

  • Use S###XX | General Name, or S###XX-A/B | Variant Name for approved structural variants.
  • Section files use the exact registry filename, for example S120MG-Media-Grid.hubl.html.
  • The section controls layout and inserts approved modules.
  • Content managers should not rebuild the composition from raw modules.

HubSpot module labels

  • Use M###XX | General Name. Shared utility modules may use the reserved M000–M099 range.
  • Keep labels concise enough for the module picker.
  • Hide section-only modules with is_available_for_new_content: false.
  • Never use reserved field names such as label.

React and CSS

  • Use PascalCase folders such as M120MGMediaGrid.
  • Nested items use U-prefixed component names.
  • CSS uses a semantic cmp- namespace.
  • Do not add translate-up hover movement unless explicitly approved.

Figma and governance

  • Use slash-separated paths such as S120MG / Media Grid / Base.
  • Record old aliases in the central registry.
  • Do not reuse retired IDs.
  • Use A/B only for structural variants validated on desktop and mobile.