This component allows you to seamlessly add drawing signature functionality to your website or mobile app. It supports JS+HTML, Vue and React.

<template>
  <SignatureMaker
    v-model="signature"
    @save="onSignatureSave"
  />
</template>

<script>
import { SignatureMaker } from '@docuseal/signature-maker-vue'

export default {
  name: 'App',
  components: {
    SignatureMaker
  },
  data() {
    return {
      signature: null,
    };
  },
  methods: {
    onSignatureSave (data) {
      console.log(data)
    }
  }
}
</script>
View LIVE DEMO

Attributes

download-on-save Boolean

Set `false` to disable downloading the signature image on save. It's useful when you want to handle the image data yourself.

Default: false

with-typed Boolean

Set `false` to disable text signature input panel.

Default: true

with-drawn Boolean

Set `false` to disable drawing signature panel.

Default: true

with-upload Boolean

Set `false` to disable uploading signature image panel.

Default: true

with-color-select Boolean

Set `false` to disable color selection. Only black color will be available.

Default: true

with-submit Boolean

Set `false` to disable the submit button. Any changes will be available as a base64 string in the `change` event. Custom event 'save' will be triggered on clicking the submit button.

Default: true

save-button-text String

Default: Submit

control-buttons-container-class String

Custom CSS class for the control buttons container.

Example: flex gap-2

control-buttons-container-style String

Custom CSS styles for the control buttons container. Default CSS styles will be disabled

Default: display: flex; align-items: center; justify-content: space-between; text-align: center; margin: 1rem 0;

save-button-class String

Custom CSS class for the save button

Example: btn btn-neutral text-white text-base w-full

save-button-style String

Custom CSS styles for the save button

Default: color: #ffffff; font-family: ui-sans-serif, system-ui, sans-serif font-size: 16px; font-weight: 600; line-height: 24px; padding: 0px 16px; text-transform: uppercase; background-color: #222222; cursor: pointer; align-items: center; border-radius: 8px; gap: 8px; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; height: 48px; justify-content: center; outline-color: #222222; text-align: center; text-decoration-line: none; width: 100%; border: 1px solid #222222;

save-button-disabled-class String

Custom CSS class for the disabled save button.

Example: btn-disabled

save-button-disabled-style String

Custom CSS styles for the disabled save button.

Default: background-color: #D3D3D3; color: #808080; cursor: not-allowed; border: 0;

undo-button-text String

Default: Undo

undo-button-class String

Custom CSS class for the undo button.

Example: btn btn-outline btn-sm font-medium

undo-button-style String

Custom CSS styles for the undo button.

Default: color: #222222; background-color: transparent; font-family: ui-sans-serif, system-ui, sans-serif; font-size: 14px; font-weight: 500; line-height: 14px; padding: 0px 12px; text-transform: uppercase; appearance: button; cursor: pointer; align-items: center; border-radius: 8px; gap: 8px; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; height: 32px; justify-content: center; outline-color: #222222; text-align: center; border: 1px solid #222222;

clear-button-text String

Custom text for the clear button.

Default: Clear

clear-button-class String

Custom CSS class for the clear button.

Example: btn btn-outline btn-sm font-medium

clear-button-style String

Custom CSS styles for the clear button.

Default: color: #222222; background-color: transparent; font-family: ui-sans-serif, system-ui, sans-serif; font-size: 14px; font-weight: 500; line-height: 14px; padding: 0px 12px; text-transform: uppercase; appearance: button; cursor: pointer; align-items: center; border-radius: 8px; gap: 8px; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; height: 32px; justify-content: center; outline-color: #222222; text-align: center; border: 1px solid #222222;

text-input-placeholder String

Custom placeholder text for the text input field.

Default: Type signature here

text-input-class String

Custom CSS class for the text input field.

Example: input mb-4 input-bordered bg-white text-2xl w-full h-14 rounded-2xl

text-input-style String

Custom CSS styles for the text input field.

Default: color: #222222; font-family: ui-sans-serif, system-ui, sans-serif; font-size: 24px; font-weight: 400; line-height: 32px; margin: 0px 0px 16px; padding: 0px 16px; background-color: #ffffff; border-radius: 8px; flex-shrink: 1; height: 56px; outline: #222222 none 0px; outline-offset: 0px; width: 100%; text-align: start; border: 1px solid #D3D3D3;

canvas-class String

Custom CSS class for the canvas element.

Example: bg-white border border-base-300 rounded-2xl w-full

canvas-style String

Custom CSS styles for the canvas element.

Default: display: block; vertical-align: middle; width: 100%; border-radius: 8px; background-color: #ffffff; padding: 1px; touch-action: none; user-select: none; text-align: center; line-height: 24px; border: 1px solid #D3D3D3;

type-buttons-container-class String

Custom CSS class for the type buttons container.

Example: flex gap-2 mb-4 justify-center

type-buttons-container-style String

Custom CSS styles for the type buttons container.

Default: margin-bottom: 1rem; display: flex; justify-content: center; flex-wrap: wrap; gap: 0.5rem;

draw-type-button-text String

Custom text for the draw type button.

Default: Draw

draw-type-button-class String

Custom CSS class for the draw type button.

Example: flex items-center justify-center py-3 w-40 uppercase border-neutral-focus space-x-2 border rounded-3xl cursor-pointer hover:bg-neutral hover:text-white hover:font-semibold

draw-type-button-style String

Custom CSS styles for the draw type button.

Default: color: #222222; font-family: ui-sans-serif, system-ui, sans-serif; font-size: 16px; font-weight: 500; line-height: 24px; padding: 0px 40px; text-transform: uppercase; background-color: transparent; cursor: pointer; align-items: center; border-radius: 8px; gap: 8px; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; height: 48px; justify-content: center; outline-color: #222222; text-align: center; border: 1px solid #222222;

draw-type-button-active-class String

Custom CSS class for the active draw type button.

Example: bg-neutral text-white font-semibold

draw-type-button-active-style String

Custom CSS styles for the active draw type button.

Default: color: #fff; background-color: #222222; font-weight: 500;

text-type-button-text String

Custom text for the text type button.

Default: Type

text-type-button-class String

Custom CSS class for the text type button.

Example: flex items-center justify-center py-3 w-40 uppercase border-neutral-focus space-x-2 border rounded-3xl cursor-pointer hover:bg-neutral hover:text-white hover:font-semibold

text-type-button-style String

Custom CSS styles for the text type button.

Default: color: #222222; font-family: ui-sans-serif, system-ui, sans-serif; font-size: 16px; font-weight: 500; line-height: 24px; padding: 0px 40px; text-transform: uppercase; background-color: transparent; cursor: pointer; align-items: center; border-radius: 8px; gap: 8px; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; height: 48px; justify-content: center; outline-color: #222222; text-align: center; border: 1px solid #222222;

text-type-button-active-class String

Custom CSS class for the active text type button.

Example: bg-neutral text-white font-semibold

text-type-button-active-style String

Custom CSS styles for the active text type button.

Default: color: #fff; background-color: #222222; font-weight: 500;

upload-type-button-text String

Custom text for the upload type button.

Default: Type

upload-type-button-class String

Custom CSS class for the upload type button.

Example: flex items-center justify-center py-3 w-40 uppercase border-neutral-focus space-x-2 border rounded-3xl cursor-pointer hover:bg-neutral hover:text-white hover:font-semibold

upload-type-button-style String

Custom CSS styles for the upload type button.

Default: color: #222222; font-family: ui-sans-serif, system-ui, sans-serif; font-size: 16px; font-weight: 500; line-height: 24px; padding: 0px 40px; text-transform: uppercase; background-color: transparent; cursor: pointer; align-items: center; border-radius: 8px; gap: 8px; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; height: 48px; justify-content: center; outline-color: #222222; text-align: center; border: 1px solid #222222;

upload-type-button-active-class String

Custom CSS class for the active upload type button.

Example: bg-neutral text-white font-semibold

upload-type-button-active-style String

Custom CSS styles for the active upload type button.

Default: color: #fff; background-color: #222222; font-weight: 500;

font-url String

Custom font URL to be used for the text signature input panel.

Default: https://cdn.jsdelivr.net/npm/@fontsource/dancing-script/files/dancing-script-latin-400-normal.woff

Callbacks

@save Function

Function to be called on saving the signature. data-with-submit attribute should be enabled to trigger this function.

Example: onSignatureSave

@change Function

Function to be called on changing the signature.

Example: onSignatureChange

Live Example