Skip to content

Block Builder: Low-Code Page Builder

Build beautiful pages without writing code. HugoBlox’s Block system allows you to stack pre-made components (like Hero sections, Portfolios, and Contact forms) to create unique landing pages.

A Landing Page (like your homepage) is defined in content/_index.md. It contains a list of sections, where each section uses a specific block (design).

content/_index.md
---
title: Home
type: landing
sections:
- block: markdown # <--- A Block
content:
title: Welcome
text: Hello World!
- block: collection # <--- Another Block
content:
title: Latest Posts
---

To add a section, open content/_index.md and append a new entry to the sections list.

- block: markdown
id: hero
content:
title: Hi, I'm George
subtitle: I build open source software.
text: Welcome to my portfolio.
design:
background:
image:
filename: bg.jpg
filters:
brightness: 0.5

Every block supports common design parameters like background, spacing, and styling.

Use a photo from assets/media/.

design:
background:
image:
filename: background.jpg
parallax: true
filters:
brightness: 0.6

Control padding and custom CSS classes.

design:
spacing:
# Top, Right, Bottom, Left
padding: ['20px', '0', '20px', '0']
css_class: 'my-custom-class'

Collection blocks (like Blog or Portfolio) let you choose how to display items.

Showcase

Large featured images with side-by-side text. view: showcase

Card

Standard grid of cards with images. view: card

Compact

Minimal list with small thumbnails. view: compact

Masonry

Pinterest-style layout for portfolios. view: masonry

HugoBlox includes multiple icon packs. Use them in blocks by specifying pack/name.

  • Hero (Outline): hero/sparkles, hero/academic-cap
  • Brands: brands/github, brands/twitter, brands/python
  • Academic: academicons/google-scholar, academicons/orcid
  • Emoji: :heart:, :rocket: