hugoblox.com/blocks/logos
Social proofFree · MITPreact · interactive

Logos block

A social-proof logo row — partners, customers, sponsors — in grid, carousel, or infinite-marquee layouts.

Add it to any Hugo page's sections list — no build step.

v2.0.0Version
12Options
MITLicense

Quick start

Add the Logos block

Drop this into your page's front matter, under the sections list. Edit the values, and HugoBlox renders the block — no build step.

Add to your page's sections
- block: logos
  content:
    title: Trusted by teams at
    items:
      - icon: brands/github
        name: GitHub
      - icon: brands/google
        name: Google
      - icon: brands/microsoft
        name: Microsoft
      - icon: brands/nvidia
        name: NVIDIA
      - icon: brands/openai
        name: OpenAI
      - icon: brands/anthropic
        name: Anthropic
      - icon: brands/stripe
        name: Stripe
      - icon: brands/vercel
        name: Vercel
  design:
    layout: marquee
    logo_style: grayscale
    logo_size: md
    marquee_speed: 30

Overview

About the Logos block

Display partner, sponsor, or collaborator logos with modern interactive effects and multiple display modes. Perfect for showcasing affiliations, building trust, and highlighting collaborations.

Features

  • Multiple Display Modes: Grid, carousel, or marquee layouts
  • Interactive Effects: Grayscale to color on hover, smooth scaling
  • Clickable Logos: Link to partner websites
  • Hover Tooltips: Show partner descriptions on hover
  • Responsive Design: Adapts perfectly to all screen sizes
  • Smooth Animations: Professional transitions and effects
  • Flexible Configuration: Use structured data or folder-based logos
  • Performance Optimized: Lazy loading and WebP format support
  • Dark Mode Support: Seamless theme switching

Display Modes

Grid Mode (Default)

Classic responsive grid layout with hover effects:

  • 2 columns on mobile
  • 3-6 columns on larger screens
  • Grayscale to color transition on hover
  • Scale animation on hover

Carousel Mode

Auto-scrolling horizontal carousel:

  • Continuous smooth scrolling
  • Pauses on hover
  • Duplicate items for seamless loop
  • Ideal for many logos

Marquee Mode

Traditional marquee scroll effect:

  • Continuous horizontal movement
  • Lightweight and performant
  • Good for header/footer placement

Usage

Basic Grid Layout

sections:
  - block: logos
    content:
      title: Our Partners & Collaborators
      subtitle: Working with leading institutions worldwide
      text: We collaborate with top universities and research centers
      logos:
        - name: MIT
          image: partners/mit.png
          url: https://mit.edu
          description: Massachusetts Institute of Technology
        - name: Stanford University
          image: partners/stanford.svg
          url: https://stanford.edu
          description: Leading research university
        - name: Google Research
          image: partners/google.png
          url: https://research.google
          description: AI and ML research
        - name: Microsoft Research
          image: partners/microsoft.svg
          url: https://www.microsoft.com/research
          description: Computing research lab
    design:
      display_mode: grid
      css_class: "bg-gray-50 dark:bg-gray-900"

Carousel Display

sections:
  - block: logos
    content:
      title: Trusted By Industry Leaders
      logos:
        # Add 8-12 logos for best carousel effect
        - name: Company 1
          image: sponsors/company1.png
          url: https://example.com
        # ... more logos
    design:
      display_mode: carousel

Legacy Folder Mode

For backward compatibility or quick setup:

sections:
  - block: logos
    content:
      title: Our Sponsors
      logo_folder: sponsors  # Loads all images from assets/media/sponsors/
    design:
      display_mode: grid

Options

Content Options

  • title: Main heading for the section
  • subtitle: Optional subtitle (shown in accent color)
  • text: Description text below title
  • logos: Array of logo configurations
    • name: Partner/sponsor name (shown in tooltip)
    • image: Path relative to assets/media/
    • url: Website URL
    • external: Open in new tab (default: true)
    • description: Hover tooltip text
  • logo_folder: Legacy option to load all images from a folder
  • cta: Optional call-to-action button
    • text: Button text
    • url: Button link
    • icon: Optional icon

Design Options

  • display_mode: Choose layout style
    • grid: Responsive grid (default)
    • carousel: Auto-scrolling carousel
    • marquee: Classic marquee effect
  • show_pattern: Add decorative background pattern (default: false)

Image Guidelines

Recommended Formats

  • SVG: Best for logos (scalable, small file size)
  • PNG: For logos with transparency
  • WebP: Modern format with best compression

Size Recommendations

  • Grid Mode: 280x140px (will be auto-fitted)
  • Carousel Mode: 280x140px minimum
  • Aspect Ratio: 2:1 or square works best

Optimization Tips

  1. Use SVG when possible for crisp rendering
  2. Optimize PNGs with tools like TinyPNG
  3. Keep file sizes under 50KB per logo
  4. Use consistent dimensions for visual harmony

Styling

Hover Effects

  • Grayscale filter removed on hover
  • Opacity increases from 60% to 100%
  • Smooth scale transformation (110%)
  • Background highlight on hover

Custom CSS

Add custom styles to enhance the block:

/* Example: Custom logo sizing */
.logos-block img {
  max-height: 80px;
}

/* Example: Remove grayscale on specific logo */
.partner-featured img {
  filter: none !important;
  opacity: 1 !important;
}

Best Practices

  1. Logo Quality: Use high-resolution logos (2x display size)
  2. Consistency: Keep logos similar in visual weight
  3. Accessibility: Always provide alt text via name field
  4. Performance: Optimize images before adding
  5. Responsive: Test on mobile devices
  6. Links: Verify all external links work
  7. Copyright: Ensure you have permission to display logos

Examples

Research Lab Partners

logos:
  - name: National Science Foundation
    image: partners/nsf.svg
    url: https://nsf.gov
    description: Federal funding agency
  - name: NIH
    image: partners/nih.png
    url: https://nih.gov
    description: National Institutes of Health

Conference Sponsors

logos:
  - name: Gold Sponsor - Microsoft
    image: sponsors/microsoft-gold.png
    url: https://microsoft.com
    description: Gold level sponsor

Industry Collaborations

logos:
  - name: OpenAI
    image: collaborators/openai.svg
    url: https://openai.com
    description: AI research partnership

Animation Speed

To adjust animation speeds, modify the CSS:

design:
  css_style: |
    .animate-marquee { animation-duration: 20s; }
    .animate-scroll { animation-duration: 30s; }

Flexibility

Layouts & variants

Switch the block's design with these presets — no custom CSS.

layoutLayout mode. 'row': static centred row, wraps on mobile — best for 3–8 logos. 'grid': responsive 2–6 column grid — best for 8–18 logos. 'marquee': infinite horizontal scroll, pauses on hover — best for 6–12 logos.
rowdefaultgridmarquee
logo_styleGlobal filter applied to all logos. 'grayscale': muted + opacity, reveals full colour on hover — neutral, works on any background (default). 'color': full brand colours with no filter — use when brand recognition matters. 'white': inverts logos to white — use when the section background is dark or uses a primary-colour fill. Override for a single logo using the per-item 'style' field (e.g. one sponsor shown in colour while others stay greyscale).
grayscaledefaultcolorwhite
logo_sizeGlobal logo height applied to all items. 'sm': 28px — compact header strip. 'md': 40px — standard (default). 'lg': 56px — prominent sponsors/partners section. All logos share a fixed-width slot, so this controls height only; varying SVG aspect ratios are normalised automatically. For a logo that appears too small or large relative to peers due to whitespace baked into its SVG viewBox, use the per-item 'scale' field instead of changing this global size.
smmddefaultlg

Reference

Configuration

Every option the Logos block accepts, generated from its schema.

Content options

Properties set under the block's content key.

PropertyTypeDefaultDescription
titlestringOptional trust-building label rendered as small caps above the logos. Often omitted for a clean look. E.g. 'Trusted by teams at', 'Used by researchers at', 'Our partners'.
subtitlestringOptional secondary line beneath the title, e.g. a category qualifier like 'Research labs & universities'.
itemsobject[]Logo items. Prefer icon (brands pack) over image for consistency and automatic dark-mode support. Use 4–12 logos for best visual balance; 6–8 is optimal for the marquee layout.
items[].iconstringBrand icon from the brands/ icon pack, e.g. 'brands/github', 'brands/google', 'brands/openai'. Check available brands at hugoblox.com/icons. Custom packs can be added to assets/icons/ in your site.
items[].namestringCompany or organisation name. Used as aria-label and img alt text. Always provide for accessibility.
items[].urlstringOptional link. Makes the logo clickable — useful for partners/sponsors pages.
items[].imagestringFallback: image filename in assets/media/ when no icon is available in the brands pack. E.g. 'logos/acme.svg'. Prefer icon over image when possible.
items[].scalenumber1Per-item visual size multiplier (default 1.0, CSS transform — does not affect layout). Solves SVG viewBox whitespace: some SVG files have blank padding baked in, making the artwork appear smaller than its declared height. scale: 1.3 compensates by enlarging the visual artwork without touching layout or other logos. Typical range: 0.6–1.5.
items[].stylegrayscale | color | whitePer-item filter override. Overrides design.logo_style for this logo only. Use when one partner must be shown in its brand colour (e.g. a headline sponsor) while all others remain greyscale, or when one logo is already white and would disappear under the grayscale filter.
ctaobjectOptional understated text link below the logos, e.g. 'See all partners →' or 'View case studies →'.
cta.textrequiredstringLink label
cta.urlrequiredstringDestination URL

Design options

Properties set under the block's design key — shared background, spacing, and color settings apply on top.

PropertyTypeDefaultDescription
layoutrow | grid | marqueerowLayout mode. 'row': static centred row, wraps on mobile — best for 3–8 logos. 'grid': responsive 2–6 column grid — best for 8–18 logos. 'marquee': infinite horizontal scroll, pauses on hover — best for 6–12 logos.
logo_stylegrayscale | color | whitegrayscaleGlobal filter applied to all logos. 'grayscale': muted + opacity, reveals full colour on hover — neutral, works on any background (default). 'color': full brand colours with no filter — use when brand recognition matters. 'white': inverts logos to white — use when the section background is dark or uses a primary-colour fill. Override for a single logo using the per-item 'style' field (e.g. one sponsor shown in colour while others stay greyscale).
logo_sizesm | md | lgmdGlobal logo height applied to all items. 'sm': 28px — compact header strip. 'md': 40px — standard (default). 'lg': 56px — prominent sponsors/partners section. All logos share a fixed-width slot, so this controls height only; varying SVG aspect ratios are normalised automatically. For a logo that appears too small or large relative to peers due to whitespace baked into its SVG viewBox, use the per-item 'scale' field instead of changing this global size.
marquee_speednumber30Duration in seconds for one full marquee cycle. Higher = slower. 15–60 works well; default 30. Only applies when layout is 'marquee'.

Compose

Works well with

Blocks that pair naturally with Logos on the same page.

Frequently asked

Logos block FAQ

  • Add a "block: logos" entry to the sections list in your page's front matter, then fill in the content fields. HugoBlox renders it automatically — copy the example config above as a starting point.

Ready to build with the Logos block?