Skip to content

lobotomoe/revenant

Revenant

Revenant

CI PyPI npm Snap Store Python 3.10+ Node.js 18+ TypeScript: strict License: Apache 2.0 OpenSSF Scorecard OpenSSF Best Practices

Cross-platform clients for DocuSign Signature Appliance (DSA) (formerly ARX CoSign) electronic signatures via the SOAP API (OASIS DSS standard).

Originally built for the Armenian Government's EKENG CoSign appliance, but works with any CoSign / DSA server that exposes the DSS SOAP endpoint.

+-------------------+
|  Python client    |----+
+-------------------+    |    SOAP/TLS         +-------------------+
                         +------------------->  |  CoSign appliance |
+-------------------+    |                      |  (any server)     |
|  TypeScript client|----+  <-----------------  +-------------------+
+-------------------+         Signed PDF

Wait, isn't this thing dead?

Yes. DocuSign officially retired the Signature Appliance product line on July 31, 2023. And yes, I built a cross-platform client for it in 2026. The appliance is discontinued, the docs are archived, the cipher suites are from a bygone era, and the server still happily runs on TLSv1.0 / RC4-MD5 like it's 2011. What are you going to do about it?

The Armenian Government's EKENG CoSign appliance doesn't care about DocuSign's product roadmap -- it's on-prem, it works, and thousands of documents get signed through it every day. Somebody had to write a proper cross-platform client for it. Might as well be me.

Install

Desktop app

macOS

brew install lobotomoe/revenant/revenant
Download on the Mac App Store

Linux

snap install revenant

Get it from the Snap Store

Windows

winget install --source msstore 9NVH62M20DS3    # WinGet
scoop bucket add revenant https://github.com/lobotomoe/scoop-revenant
scoop install revenant                           # Scoop
Get it from Microsoft Store

Or download binaries from GitHub Releases.

Libraries

Python (docs)

pipx install revenant    # recommended
pip install revenant     # or inside a venv

TypeScript / Node.js (docs)

npm install revenant-sign

Features

  • Embedded and detached PDF signing with customizable visual appearance
  • Signature verification -- hash integrity, CMS structure, certificate chain
  • PKI chain validation against ETSI Trust Service Lists (TSL)
  • Localization -- English, Russian, Armenian
  • Batch signing -- sign multiple files in one session
  • Cross-platform GUI (tkinter) and CLI
  • macOS universal binaries (arm64 + x86_64)
  • Legacy TLS support -- TLS 1.0 / RC4 for servers that require it

Compatibility

Signed PDFs verified against third-party services that accept EKENG digital signatures:

Documentation

Protocol, API, and server-specific docs live in docs/ and are shared between clients.

References

Disclaimer

This is an unofficial, independently developed client. It is not affiliated with, endorsed by, or supported by EKENG, ARX, or DocuSign.

  • This software is provided "as is" without warranty of any kind
  • Electronic signatures carry legal significance β€” verify that your use case complies with applicable laws and your organization's policies
  • You are responsible for safeguarding your CoSign credentials and for all signatures made using this tool
  • This tool communicates with CoSign servers using the documented OASIS DSS SOAP protocol β€” the same public API described in the official API Guide. No proprietary software is reverse-engineered or redistributed

Privacy

This program does not collect, transmit, or share any data with the developer or third parties. It communicates only with the CoSign server you configure. See Privacy Policy.

License

Apache 2.0

About

Cross-platform Python client for ARX CoSign electronic signatures via SOAP API

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors