Skip to content

Furniture Store Homepage Template

Warm Bootstrap 6 furniture shop homepage with a shop-the-look hero, room collections, bestseller tabs with fabric swatches, showroom booking with datepicker, reviews carousel and FAQ.

Live preview

Open in new tab

Code

A warm, editorial furniture store homepage built with Bootstrap 6 for a fictional brand called Alder & Row. It covers collections, bestsellers, a showroom booking form and customer reviews.

How it works

The page lives in .ar-page with data-bs-theme="light". It maps the Bootstrap 6 primary role to olive (--ar-olive) and the accent role to clay (--ar-clay), and pairs the Gloock serif with Figtree.

  • Navbar: navbar lg:navbar-expand collapses into a <dialog class="drawer drawer-start">. "Rooms" opens a .menu with a menu-header and menu-divider. The script closes the drawer after an in-page link and syncs aria-expanded.
  • Hero: a serif headline sits next to .ar-look, a "shop the look" photo. Each .ar-spot hotspot is a data-bs-toggle="popover" button, so it opens a product popover without any init code.
  • Collections: .ar-collage is a CSS grid with one tall tile and four smaller ones, with a gradient overlay behind the labels.
  • Bestsellers: nav nav-underline tabs switch two .tab-pane panels. The .ar-swatches radio groups update the fabric name in [data-ar-color]. Each .ar-wish heart is a data-bs-toggle="button" toggle, and the script counts the active ones in the navbar badge [data-ar-saved].
  • Showroom: a photo with a static SVG map, plus a booking form. It uses a Bootstrap 6 Combobox for the location, a Datepicker limited to the next 60 days (the script computes the limits from today) and btn-check time slots. On submit the script checks every field, marks invalid ones with .is-invalid and simulates the request. A success alert then confirms the booking.
  • Reviews, FAQ, CTA: a Bootstrap 6 scroll-snap carousel of quotes, an exclusive <details name="ar-faq"> accordion and a dark call-to-action band.

Customization

  • To restyle the page, change --ar-cream, --ar-olive and --ar-clay on .ar-page in style.css. The --bs-primary-* and --bs-accent-* overrides follow them.
  • To match your own photo, move the hotspots by editing left/top on .ar-spot-lamp, .ar-spot-sofa, .ar-spot-table and .ar-spot-pouf. Change data-bs-content for the popover text.
  • To add fabric colors, create a new .ar-sw-* class with a background color and add another radio inside .ar-swatches.
  • To change the booking window, edit the + 1 and + 60 day offsets in script.js.
  • To send real bookings, replace the setTimeout in the booking handler with fetch() to your endpoint.
  • For a shorter page, delete .ar-faq-wrap or .ar-ribbon.
  • The photos come from Unsplash; replace them with your own product and room shots.

Accessibility

A skip link jumps to #ar-main. Hotspots and hearts have descriptive aria-labels, the hearts expose aria-pressed, and swatches are real radios with hidden labels. Tabs use role="tab", and the map is a role="img" with a label. The booking result is announced with role="status". Motion is disabled under prefers-reduced-motion.

Bootstrap 6 notes

Built on Bootstrap 6.0.0-alpha.1, so alpha APIs can still change. Drawer replaces Offcanvas in the navbar, Menu replaces Dropdown, and the FAQ uses native <details>. Combobox and Datepicker are new Bootstrap 6 components. Popovers auto-initialise, so there is no new Popover() loop. The Combobox keeps its selection after a booking.

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=Gloock&family=Figtree:wght@400;500;600;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.

Furniture Store Homepage Template – Bootstrap 6 home pages component screenshot
Furniture Store 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.

Travel Agency Homepage Template – Bootstrap 6 home pages preview

Travel Agency Homepage Template

Bootstrap 6 travel agency homepage template with a photo hero and trip search, region-filtered destinations, tour packages with a budget slider, itinerary dialog, stories carousel and newsletter.

Electronics Store Homepage Template – Bootstrap 6 home pages preview

Electronics Store Homepage Template

Dark Bootstrap 6 electronics shop homepage with a bento deals hero, live flash-sale countdown, filterable product grid, cart drawer, trade-in estimator, reviews and newsletter.

E-commerce Fashion Store Homepage Template – Bootstrap 6 home pages preview

E-commerce Fashion Store Homepage Template

Editorial Bootstrap 6 fashion store homepage with a centered-logo navbar, lookbook hero, category tiles, filterable new arrivals, cart drawer, sale countdown, reviews and newsletter signup.

Kindergarten Homepage Template – Bootstrap 6 home pages preview

Kindergarten Homepage Template

Playful Bootstrap 6 kindergarten homepage with a drawer navbar, photo collage hero, program tabs, daily rhythm stepper, teacher cards, parent reviews and a visit booking form.