Self-hosting

Everything you need to run NoSign on your own infrastructure.

NoSign is designed to run on your own servers with no external service dependencies. The principle is “everything in the box.”

Tech stack

LayerTechnology
ApplicationLaravel 12
DatabasePostgreSQL 16 (JSONB audit payloads)
StorageLocal private storage (no S3 or external object store)
FrontendBlade + Alpine.js (CSP build, no eval) + PDF.js + signature_pad
QueuesLaravel Queues
EmailSelf-hosted SMTP with DKIM, SPF, and DMARC
PDF processingFPDI + TCPDF for stamping; Ghostscript for PDF/1.4 normalization
Cryptographic sealPAdES-B-T via TCPDF-native signature + a self-built RFC3161 timestamp injector
Embedded evidenceAudit-certificate page + nosign-audit.json inside the sealed PDF
Offline verificationStateless verifier built on openssl cms / openssl ts
Timestamp authoritySelf-hosted TSA sidecar (RFC3161)
Webhook secretsEncrypted at rest, zero-downtime rotation
API docsOpenAPI via dedoc/scramble (sandbox surface)
ContainerizationDocker + Coolify
TestsPest test suite

Zero paid crypto dependencies

PAdES-B-T sealing — including the embedded RFC3161 timestamp — is built entirely on open tooling and a hand-rolled CMS timestamp injection. There is no commercial signing SDK.

Deployment

NoSign is distributed as a Docker image deployable with Coolify (or any Docker-compatible host). The application, database, SMTP, and TSA sidecar run together. No external services are required at runtime.

What you need

Certificate configuration

NoSign generates a self-signed organizational certificate for the PDF seal by default. To swap in an AATL or commercially-trusted certificate so PDF readers show a green checkmark:

  1. Obtain a .p12 certificate file from a trusted CA.
  2. Place it in the configured certificate path.
  3. Restart the application.

No code change is required.

Admin access

The admin dashboard is isolated behind a separate authentication boundary with 2FA enforced and no public registration. Admin accounts are created directly by the instance operator.