Skip to content
  • No data uploaded
  • Instant results

Bootstrap 5 Signup Form for Vue 3

A production-ready minimal signup form: a registration card with name, email and password fields, a password hint, a terms-of-service checkbox and a primary call to action. Pick your brand color, toggle dark mode and corner radius — the live preview and the Vue 3 code update instantly in your browser.

Live component editor

Library
Framework
Style
Theme
Corner radius
Live preview
<script setup>
import 'bootstrap/dist/css/bootstrap.min.css';
import './theme.css';
</script>

<template>
  <div class="w-100 mw-md p-5 bg-body border shadow-sm rounded-3">
    <span class="badge rounded-pill bg-brand-subtle text-brand">Free 14-day trial</span>
    <h2 class="mt-2 fs-4 fw-bold text-body-emphasis">Create your account</h2>
    <p class="mt-1 mb-4 small text-body-secondary">No credit card required.</p>
    <form class="d-flex flex-column gap-3">
      <div class="row row-cols-2 g-2">
        <div class="col">
          <label for="su-first" class="form-label small fw-medium">First name</label>
          <input id="su-first" type="text" autocomplete="given-name" class="form-control rounded-2" required>
        </div>
        <div class="col">
          <label for="su-last" class="form-label small fw-medium">Last name</label>
          <input id="su-last" type="text" autocomplete="family-name" class="form-control rounded-2" required>
        </div>
      </div>
      <div>
        <label for="su-email" class="form-label small fw-medium">Work email</label>
        <input id="su-email" type="email" autocomplete="email" placeholder="you@company.com" class="form-control rounded-2" required>
      </div>
      <div>
        <label for="su-password" class="form-label small fw-medium">Password</label>
        <input id="su-password" type="password" autocomplete="new-password" aria-describedby="su-hint" class="form-control rounded-2" required>
        <p id="su-hint" class="mt-1 small text-body-secondary">At least 12 characters, including a number.</p>
      </div>
      <label class="d-flex align-items-start gap-2 small text-body">
        <input type="checkbox" class="form-check-input mt-0 mt-1" required>
        <span>I agree to the <a href="#" class="text-brand fw-medium text-decoration-none">Terms</a> and <a href="#" class="text-brand fw-medium text-decoration-none">Privacy Policy</a>.</span>
      </label>
      <button type="submit" class="btn btn-brand fw-semibold rounded-2 w-100">Create account</button>
    </form>
    <p class="mt-4 text-center small text-body-secondary">Already registered? <a href="#" class="text-brand fw-medium text-decoration-none">Sign in</a></p>
  </div>
</template>
All components →

Free Bootstrap 5 Signup Form for Vue 3 by pGento

Install Bootstrap 5 for Vue 3

Create a Vue 3 project with Vite and install Bootstrap:

npm create vite@latest my-app -- --template vue
cd my-app
npm install
npm install bootstrap

Save the generated theme.css next to the component; the component file already imports bootstrap/dist/css/bootstrap.min.css and ./theme.css. No Bootstrap JavaScript is required — interactivity uses ref().

Use the signup form in Vue 3

<!-- App.vue -->
<script setup>
import SignupForm from './SignupForm.vue';
</script>

<template>
  <SignupForm />
</template>

Accessibility & customization

Inputs are paired with <label for> and the password hint is linked via aria-describedby so screen readers announce the requirement. The terms checkbox is a real <input type="checkbox"> inside its label for a large click target.

Every color, radius and dark-mode choice is baked into plain Bootstrap classes plus a tiny CSS-variable theme file, so the copied code has no runtime dependency on this site.

Compatibility

ItemDetails
CSS frameworkBootstrap 5.3+ (CSS only)
LibraryVue 3 (<script setup>)
Interactive stateNone (static markup)
Dark modeYes — toggle in the editor
StyleMinimal

Frequently asked questions

How do I install this Bootstrap signup form in Vue 3?
Create a Vue 3 project, install Bootstrap 5 as shown in the installation section, then paste the generated code. Also save the generated theme.css file.
Can I change the color of the signup form?
Yes. Use the brand color picker or type any hex code — the preview and code update instantly, and the color is written directly into the classes you copy.
Does the signup form support dark mode?
Yes. Toggle “Dark mode” in the editor to generate a dark palette version of the same component.
Is the signup form accessible?
Inputs are paired with <label for> and the password hint is linked via aria-describedby so screen readers announce the requirement. The terms checkbox is a real <input type="checkbox"> inside its label for a large click target.
Is this component free for commercial use?
Yes. The generated code is yours to use in personal and commercial projects without attribution.
Bootstrap 5 Signup Form for Vue 3

Embed this tool on your site

Paste this code into any web page. It stays free, fast and ad-free inside your site.

Print or save as PDF

Prints just this tool and its result. Choose “Save as PDF” as the printer to get a file. Branding is stored only in this browser.