Papermark is an open-source, self-hosted DocSend alternative that enables secure document sharing with built-in analytics and custom branding.
Papermark is the open-source DocSend alternative with built-in analytics and custom domains.
Papermark is designed for individuals and organizations that need to securely share documents via custom links while tracking engagement through analytics. It is ideal for businesses wanting to maintain privacy and control by self-hosting their document sharing platform with customizable branding and domain options.
Papermark requires Node.js >= 18.17.0, PostgreSQL, and blob storage (AWS S3 or Vercel Blob). Email functionality depends on Resend service. For analytics, Tinybird CLI setup and token configuration are necessary. Self-hosting allows full customization but requires managing dependencies and environment variables carefully.
Clone the repository: git clone https://github.com/mfts/papermark.git && cd papermark
Install npm dependencies: npm install
Copy environment variables: cp .env.example .env and update values accordingly
Initialize the database: npm run dev:prisma
Run the development server: npm run dev
Open the app in a browser at http://localhost:3000
git clone https://github.com/mfts/papermark.git
Clone the Papermark repository locally
npm install
Install all required npm dependencies
cp .env.example .env
Copy example environment variables to .env file for configuration
npm run dev:prisma
Initialize and migrate the PostgreSQL database schema
npm run dev
Start the development server
tb push datasources/*
Push Tinybird data sources for analytics setup
tb push endpoints/get_*
Push Tinybird API endpoints for analytics queries