Footer — JSON Configuration Guide
This guide explains how to configure Footer in config/nam.vibentec.design.json. It follows the current structure and does not use file line references.
Location
Footerlives underlayoutin the design JSON.- You can have multiple
Footerblocks (e.g., one primary content footer and one bottom bar). - Each
Footerhas aconfigobject andleft/center/rightarrays for child components.
Minimal Structure
{
"Footer": {
"config": {
"className": "content-container",
"leftClassName": "",
"centerClassName": "",
"rightClassName": "",
"left": [],
"center": [],
"right": []
}
}
}
Core Config Keys
className: overall footer CSS classes.leftClassName/centerClassName/rightClassName: per-region CSS classes.left/center/right: arrays of components to render in each region.
Primary Content Footer
This section typically contains a hero (logo + description + CTA), menu columns, and legal links.
Hero Block (VtFooterHero)
Common config keys:
logoSrc,logoAlt,logoClassName: image source, alt text, and logo CSS.title,description: heading and short description.cta:{ label, href }to render a call-to-action button.- Display classes:
className,ctaClassName,titleClassName,descriptionClassName.
Example:
{
"VtFooterHero": {
"config": {
"logoSrc": "/your-logo.svg",
"logoAlt": "YourBrand",
"logoClassName": "h-[100px] w-[255px]",
"title": "Technology solutions for business",
"description": "Modernize infrastructure and optimize operations with an expert team.",
"cta": { "label": "Contact us", "href": "/contact" },
"ctaClassName": "ml-8",
"titleClassName": "ml-8",
"descriptionClassName": "ml-8 w-[320px]"
}
}
}
Place inside Footer.config.left to show the hero in the left region.
Menu Columns (VtMenuItem)
Used to create column-based link lists.
Config keys:
title: column title.items: array of{ text, href, icon? }.- CSS classes:
classNamefor the column,itemClassNamefor each item.
Example column:
{
"VtMenuItem": {
"config": {
"title": "Company",
"className": "flex flex-col gap-y-2 text-[24px] font-semibold",
"itemClassName": "text-[1rem]",
"items": [
{ "text": "About us", "href": "/about" },
{ "text": "News", "href": "/news" },
{ "text": "Careers", "href": "/careers" }
]
}
}
}
Add multiple VtMenuItem entries to Footer.config.center to render multiple columns.
Right Region (Legal Links)
You can use VtMenuItem for links like Privacy Policy, Terms, Install Info.
Example:
{
"VtMenuItem": {
"config": {
"className": "flex flex-col gap-y-2 text-[24px] font-semibold",
"itemClassName": "text-[1rem]",
"items": [
{ "text": "Privacy Policy", "href": "/privacy" },
{ "text": "Terms", "href": "/terms" },
{ "text": "Install Info", "href": "/install" }
]
}
}
}
Place inside Footer.config.right.
Bottom Footer Bar
The second block is typically a bottom bar with copyright text and payment icons.
VtFooterBottom
Config keys:
text: copyright content.icons: array of icon names (e.g.,"Mastercard","PayPal","Visa").
Example:
{
"Footer": {
"config": {
"className": "content-container h-[128px] w-full flex items-center justify-between",
"left": [
{
"VtFooterBottom": {
"config": {
"text": "©2025 YourBrand. All rights reserved",
"icons": ["Mastercard", "PayPal", "Visa"]
}
}
}
]
}
}
}
Common Edits
- Update logo/title/description/CTA in
VtFooterHero. - Add/remove/edit links in
VtMenuItemcolumns. - Adjust CSS via
className,leftClassName,centerClassName,rightClassName. - Reorder components by moving items within
left/center/rightarrays. - Update
textandiconsinVtFooterBottom.
Adding New Components
- Identify the target region (
left,center,right). - Insert a new object with the component name and its
config. - Follow existing CSS class conventions for consistent styling.
Example (add a small announcement):
{ "AnnouncementBar": { "config": { "text": "Free shipping over €50" } } }
Add to Footer.config.center or another suitable region.
Tips
- Keep JSON valid (commas, braces, quotes). Use a formatter if needed.
- Reuse existing CSS class conventions to keep styles consistent.
- Icon names must match the supported icon set.
- Use
left/center/rightto organize layout clearly.
This guide helps you configure the footer quickly following the current pattern.