Snippets Footer

Bootstrap 5 Footer with Animated Wave and Newsletter

A responsive site footer with a gently moving wave edge, brand blurb with email sign-up, and three link columns over a deep indigo panel.

Bootstrap 5 No jQuery Feb 2020 2.1K views

<section class="wdw-stage align-items-end p-0">
  <div class="container-fluid px-0 d-flex flex-column justify-content-end" style="min-height:100vh">
    <div class="d-flex align-items-center justify-content-center text-center px-3 py-5 wdw-pagehint">
      <div>
        <span class="wdw-eyebrow">Page content</span>
        <h1 class="wdw-heading display-6 mt-1">A page that ends with a footer worth scrolling to.</h1>
        <p class="wdw-muted mb-0">A footer with a soft animated wave and clear link columns.</p>
      </div>
    </div>
    <footer class="wdw-footer wdw-aurora position-relative overflow-hidden">
      <svg class="wdw-wave wdw-wave-back" viewBox="0 0 2880 100" preserveAspectRatio="none" aria-hidden="true"><path d="M0 50 C360 100 360 0 720 50 S1080 100 1440 50 C1800 100 1800 0 2160 50 S2520 100 2880 50 V0 H0Z"/></svg>
      <svg class="wdw-wave wdw-wave-front" viewBox="0 0 2880 100" preserveAspectRatio="none" aria-hidden="true"><path d="M0 50 C360 100 360 0 720 50 S1080 100 1440 50 C1800 100 1800 0 2160 50 S2520 100 2880 50 V0 H0Z"/></svg>
      <div class="container position-relative wdw-footer-body" style="max-width:1100px">
        <div class="row g-4 g-lg-5">
          <div class="col-lg-4">
            <div class="fw-bold fs-3 mb-2">Northwind</div>
            <p class="opacity-75 mb-4">Tools that help small teams ship thoughtful work, faster.</p>
            <form class="d-flex gap-2" id="ftForm" novalidate>
              <label class="visually-hidden" for="ftEmail">Email</label>
              <input id="ftEmail" type="email" class="form-control rounded-pill wdw-ft-input" placeholder="Email address" required>
              <button class="btn btn-primary rounded-pill px-4" type="submit">Join</button>
            </form>
            <div class="small mt-2 opacity-75" id="ftMsg" role="status"></div>
          </div>
          <div class="col-6 col-md-4 col-lg-2 offset-lg-1"><h2 class="h6 fw-bold mb-3">Product</h2><ul class="list-unstyled mb-0 d-grid gap-2"><li><a href="#">Features</a></li><li><a href="#">Pricing</a></li><li><a href="#">Changelog</a></li><li><a href="#">Roadmap</a></li></ul></div>
          <div class="col-6 col-md-4 col-lg-2"><h2 class="h6 fw-bold mb-3">Company</h2><ul class="list-unstyled mb-0 d-grid gap-2"><li><a href="#">About</a></li><li><a href="#">Careers</a></li><li><a href="#">Blog</a></li><li><a href="#">Contact</a></li></ul></div>
          <div class="col-12 col-md-4 col-lg-2"><h2 class="h6 fw-bold mb-3">Legal</h2><ul class="list-unstyled mb-0 d-grid gap-2"><li><a href="#">Privacy</a></li><li><a href="#">Terms</a></li><li><a href="#">Security</a></li></ul></div>
        </div>
        <hr class="border-light opacity-25 my-4 my-lg-5">
        <div class="d-flex flex-column flex-sm-row justify-content-between gap-2 small opacity-75"><span>© 2026 Northwind Inc.</span><span>Made with care.</span></div>
      </div>
    </footer>
  </div>
</section>

Built on Bootstrap 5.3.8 with plain JavaScript — no jQuery. Supports light and dark mode via data-bs-theme.

Free to use in personal and commercial projects under the MIT license.