unified-doc

Overview

A simple implementation of an Esignature application (e.g. Docusign) using unified-doc. This example only focuses on signing features. Other useful ESignature features (e.g. searching) can be implemented and explored in the Doc preview example.

Source Code

Features

  • Navigate to marked areas of the documents and apply signatures.
  • Attach signatory data (name, date) in a really simple way.
  • On completion, save the signed document as a new HTML document.

Concepts

  • Use marks initially to identify signature nodes.
  • Replace mark nodes with custom content based on the data tracked in marks.
  • Apply custom mark CSS to render additional signature related data (e.g. :after, content: attr(data-signed-date)).
  • Re-save the updated document as a new HTML file, complete with applied user content.
  • doc.file()
  • dom.highlight()
  • dom.registerMarks()
  • dom.saveFile()
  • options.marks
  • options.sanitizeSchema

Demo

Please fill in the name of the signer to place signatures

The First ESigned md Document

With unified-doc, we now have the ability to esign markdown documents (or any document format that unified-doc supports). With this approach, we no longer have to:

  • write custom programs per document type to implement esignature features on different documents.
  • build complex pipelines to convert between document formats to collect esignatures in a non-native document format.
  • integrate with third-party vendor solutions that maybe limiting, expensive, and just cumbersome at times.

If you think this is cool and would like to see how we generate a signed document with minimal effort, please sign here: {{SIGNATURE}} as well as the following places in the document below.

{{SIGNATURE}} in a header.

You can also {{SIGNATURE}} within a blockquote.

  • and {{SIGNATURE}} in list items.
  • it's that easy!
© 2020 unified-doc