dev-tools 3 min read

Papermark – Open-Source DocSend Alternative

Papermark is an open-source document-sharing platform with real-time analytics, custom domains, and self-hosting. Built on Next.js and PostgreSQL.

By
Share: X in
Papermark product thumbnail

TL;DR

TL;DR: Papermark is an open-source document-sharing platform that replaces DocSend with real-time analytics, custom domain support, and a full self-hosting option.

Source and Accuracy Notes

⚠️ This section is MANDATORY. All links must be verified from actual source, not guessed.

What Is Papermark?

Papermark is an open-source document-sharing platform that competes directly with DocSend. According to the README, it is “the open-source document-sharing alternative to DocSend, featuring built-in analytics and custom domains.”

The project launched on Product Hunt and crossed 1,000 GitHub stars within its first month, with over 10 contributors on GitHub as of the HN launch announcement.

Key features (from the README):

  • Shareable Links — share documents securely with a custom link
  • Custom Branding — add a custom domain and your own branding
  • Analytics — gain insights through document tracking with page-by-page analytics coming soon
  • Self-hosted, Open-source — host it yourself and customize as needed

Tech Stack

According to the README, Papermark uses:

  • Next.js — framework
  • TypeScript — language
  • Tailwind — CSS
  • shadcn/ui — UI components
  • Prisma — ORM
  • PostgreSQL — database
  • NextAuth.js — authentication
  • Tinybird — analytics
  • Resend — email
  • Stripe — payments
  • Vercel — hosting

Setup Workflow

Prerequisites

To self-host Papermark, you need:

  • Node.js (version 18.17.0 or higher)
  • PostgreSQL database
  • Blob storage (AWS S3 or Vercel Blob)
  • Resend account (for sending emails)

Step 1: Clone the Repository

git clone https://github.com/mfts/papermark.git
cd papermark

Step 2: Install Dependencies

npm install

Step 3: Configure Environment Variables

cp .env.example .env

Then edit the .env file with your specific values for the database connection, blob storage, Resend API key, and other required services.

Step 4: Initialize the Database

After configuring the environment variables, initialize the PostgreSQL database using Prisma:

npx prisma db push

Step 5: Run the Dev Server

npm run dev

Step 6: Open the App

Navigate to http://localhost:3000 after starting the dev server.

Practical Evaluation Checklist

  • GitHub stars: 8,912 (verified via GitHub REST API)
  • Forks: 1,344
  • License: AGPL-3.0
  • Last push: 2026-08-11
  • Self-hostable: Yes — full source available
  • Custom domains: Yes — documented in README
  • Analytics: Yes — built-in document tracking

FAQ

Q: Can I use Papermark for commercial purposes? A: The project is AGPL-3.0 licensed. Commercial use is permitted under AGPL-3.0 terms. Note that portions under the ee/ directory use a separate commercial license.

Q: Does Papermark support page-by-page analytics? A: Document-level tracking is available. Page-by-page analytics are listed as “coming soon” in the README.

Q: What blob storage options are supported? A: AWS S3 and Vercel Blob are currently supported for document storage.

Q: Is there a hosted version? A: Yes — papermark.io offers a hosted version. Self-hosting is available using the open-source codebase.

Conclusion

Papermark fills a clear gap for teams that want DocSend-like document sharing analytics without the vendor lock-in. With 8,900+ stars, active development, and a clean AGPL-3.0 license, it is a credible option for teams that need secure document sharing with custom branding and self-hosting flexibility.

For a detailed walkthrough of the setup, visit the GitHub repository README.