Skip to content

Music Band Homepage Template

Dark Bootstrap 6 music band homepage with a photo hero, relative tour dates with a region filter, album tracklists, video dialog, press quotes and a mailing list form.

Live preview

Open in new tab

Code

A dark, poster-style music band homepage template built with Bootstrap 6 for a fictional indie band called The Velvet Static, with tour dates, album tracklists, a video grid, press quotes and a mailing list signup.

How it works

Everything lives inside .vs-page, which carries data-bs-theme="dark" and re-maps the Bootstrap 6 primary role to the brand ember orange, so every btn-solid theme-primary, badge and checkbox follows the brand.

  • Navbar: navbar lg:navbar-expand with a <dialog class="drawer drawer-end">. Below 1024px the toggler opens the drawer; wider, the drawer becomes the inline link row. "Listen" opens a .menu with streaming links. The script syncs aria-expanded on the toggler and closes the drawer after an in-page link.
  • Hero: a full-bleed concert photo (.vs-hero-img) under a gradient, a condensed headline, two calls to action, the .vs-next card with the next shows and an orange .vs-ticker band.
  • Tour dates: each .vs-show row has a data-vs-days offset. The script adds that many days to today and writes the day and month, so the list never shows past dates. A btn-group of btn-check radios filters rows by data-vs-region and announces the count in a live region.
  • Records: the new album has a CSS-drawn cover and a numbered tracklist; older releases use a <details> accordion (accordion-flush accordion-sm) for their tracklists.
  • Videos: each .vs-video button opens the shared #vs-video-dialog (<dialog class="dialog dialog-lg">). The script copies data-vs-video-title and data-vs-video-src into the dialog first.
  • Press and Static Club: stat tiles, three review quotes, and a <form data-bs-validate novalidate> that flags invalid fields with .is-invalid, simulates the request with a spinner and shows #vs-toast with Toast.getOrCreateInstance().

Customization

  • Change --vs-ember and --vs-gold in .vs-page (style.css) to rebrand; keep the --bs-primary-* overrides next to them in sync.
  • Edit data-vs-days on each .vs-show and .vs-next-date to set how many days from today each show is.
  • Add rows with data-vs-region="eu" or "na", or a radio with a new value for another region.
  • Replace .vs-player inside #vs-video-dialog with a YouTube or Vimeo embed.
  • Swap the setTimeout in the submit handler of script.js for fetch() to your mailing list endpoint.
  • The photos come from Unsplash; replace them with your own band and live shots.

Accessibility

A skip link jumps to #vs-main. The drawer toggler has aria-controls and an updated aria-expanded, decorative icons are aria-hidden, the CSS album covers are role="img" with labels, and filter results are announced with aria-live. Fields have labels and feedback text, the toast uses role="status", and focus rings use the brand color. The ticker animation and hover zooms stop under prefers-reduced-motion.

Bootstrap 6 notes

Built on Bootstrap 6.0.0-alpha.1 (alpha APIs can still change). Bootstrap 5 developers will notice: btn-solid theme-primary and btn-outline theme-secondary replace per-color button classes, the navbar uses lg:navbar-expand with a Drawer instead of navbar-collapse, Dropdown is now Menu, Modal is now Dialog, the accordion is native <details>, badges use badge-subtle theme-*, and validation uses data-bs-validate. Drawer and Toast are imported as ES modules.

Requirements

Add these to your page (already included in the download):

  • <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@6.0.0-alpha.1/dist/css/bootstrap.min.css">
  • <script type="module" src="https://cdn.jsdelivr.net/npm/bootstrap@6.0.0-alpha.1/dist/js/bootstrap.bundle.min.js"></script>
  • <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
  • <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@700;800;900&family=Chivo:wght@400;500;700&display=swap">

Built for Bootstrap 6.0.0-alpha.1. Bootstrap 6 ships as an ES module, so its script and this component's JavaScript load with type="module". Alpha releases can still change before the stable version.

Music Band Homepage Template – Bootstrap 6 home pages component screenshot
Music Band Homepage Template · Bootstrap 6 Home Pages

More Home Pages

Fitness Gym Homepage Template – Bootstrap 6 home pages preview

Fitness Gym Homepage Template

Dark Bootstrap 6 gym homepage with drawer navbar, photo hero, programs, a weekly class timetable, membership plans with a range-based recommender, coaches and a free-pass form.

Bakery Homepage Template – Bootstrap 6 home pages preview

Bakery Homepage Template

Warm Bootstrap 6 bakery homepage template with an arched photo hero, tabbed product menu with tray, story stepper, cake order form with datepicker, reviews and a Bread Club dialog.

News Magazine Homepage Template – Bootstrap 6 home pages preview

News Magazine Homepage Template

Newspaper-style Bootstrap 6 news magazine homepage with a masthead, sections drawer, breaking ticker, three-column front page, desk tabs, opinion, reader trust and subscription plans.

Podcast Homepage Template – Bootstrap 6 home pages preview

Podcast Homepage Template

Warm, light Bootstrap 6 podcast homepage with a cover-art hero and episode player, searchable episode list with topic chips, hosts, listener reviews, subscribe links and FAQ.

Event Conference Homepage Template – Bootstrap 6 home pages preview

Event Conference Homepage Template

Dark Bootstrap 6 tech conference homepage template with a live countdown hero, speaker dialogs, two-day schedule tabs with track filters, ticket tiers with a team Range slider and FAQ.

Church Community Homepage Template – Bootstrap 6 home pages preview

Church Community Homepage Template

Warm Bootstrap 6 church homepage template with an arched photo hero, service times, ministries, filterable events, sermon series dialog, member stories and a plan-a-visit form.