0x3d.Site
is designed for aggregating information.
check repository here
Papermark is the open-source document-sharing alternative to DocSend, featuring built-in analytics and custom domains.
Features
- Shareable Links: Share your documents securely by sending a custom link.
- Custom Branding: Add a custom domain and your own branding.
- Analytics: Gain insights through document tracking and soon page-by-page analytics.
- Self-hosted, Open-source: Host it yourself and customize it as needed.
Demo
Tech Stack
- 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
Getting Started
Prerequisites
Here's what you need to run Papermark:
- Node.js (version >= 18.17.0)
- PostgreSQL Database
- Blob storage (currently AWS S3 or Vercel Blob)
- Resend (for sending emails)
1. Clone the repository
git clone https://github.com/mfts/papermark.git
cd papermark
2. Install npm dependencies
npm install
3. Copy the environment variables to .env
and change the values
cp .env.example .env
4. Initialize the database
npm run dev:prisma
5. Run the dev server
npm run dev
6. Open the app in your browser
Visit http://localhost:3000 in your browser.
Tinybird Instructions
To prepare the Tinybird database, follow these steps:
- We use
pipenv
to manage our Python dependencies. If you don't have it installed, you can install it using the following command:pkgx pipenv
- Download the Tinybird CLI from here and install it on your system.
- After authenticating with the Tinybird CLI, navigate to the
lib/tinybird
directory:cd lib/tinybird
- Push the necessary data sources using the following command:
tb push datasources/* tb push endpoints/get_*
- Don't forget to set the
TINYBIRD_TOKEN
with the appropriate rights in your.env
file.
Updating Tinybird
pipenv shell
## start: pkgx-specific
cd ..
cd papermark
## end: pkgx-specific
pipenv update tinybird-cli
Contributing
Papermark is an open-source project, and we welcome contributions from the community.
If you'd like to contribute, please fork the repository and make any changes you'd like. Pull requests are warmly welcome.
Our Contributors ✨
Open Source
Open source software is freely available for use, modification, and distribution. It fosters collaboration and innovation, with popular examples like Linux, Git, and Apache. Open source drives much of today’s technology infrastructure.
Unkey
GitHub - pingdotgg/zapdos
GitHub - noahflk/railtrack: Next.js and Supabase app to track your train journeys in Europe
GitHub - vanxh/openbio: Open source beautiful link in bio pages.
GitHub - keephq/keep: The open-source alert management and AIOps platform
GitHub - RomanHotsiy/commitgpt: Automatically generate commit messages using ChatGPT
GitHub - midday-ai/midday: Run your business smarter 🪄
GitHub - neondatabase/yc-idea-matcher: Submit your idea and get a list of similar ideas that YCombinator has invested in in the past.
GitHub - steven-tey/novel: Notion-style WYSIWYG editor with AI-powered autocompletion.
GitHub - tldraw/tldraw: SDK for creating whiteboards and canvas experiences on the web.
GitHub - implerhq/impler.io: Powerful CSV & Excel Import experience for SaaS 🚀 Save months building data import experience from scratch 💰
GitHub - openstatusHQ/openstatus: 🏓 The open-source synthetic monitoring platform 🏓
GitHub - vercel/platforms: A full-stack Next.js app with multi-tenancy and custom domain support. Built with Next.js App Router and the Vercel Domains API.
GitHub - triggerdotdev/trigger.dev: Trigger.dev is the open source background jobs platform for TypeScript.
GitHub - winglang/wing: A programming language for the cloud ☁️ A unified programming model, combining infrastructure and runtime code into one language ⚡
GitHub - ghostfolio/ghostfolio: Open Source Wealth Management Software. Angular + NestJS + Prisma + Nx + TypeScript 🤍
GitHub - documenso/documenso: The Open Source DocuSign Alternative.
GitHub - NickTikhonov/dun-cli: Zero friction git commits powered by GPT-3.5 ✨
GitHub - mfts/papermark: Papermark is the open-source DocSend alternative with built-in analytics and custom domains.
GitHub - aptabase/aptabase: ✨ Open Source, Privacy-First and Simple Analytics for Mobile, Desktop and Web Apps
GitHub - QuivrHQ/quivr: Open-source RAG Framework for building GenAI Second Brains 🧠 Build productivity assistant (RAG) ⚡️🤖 Chat with your docs (PDF, CSV, ...) & apps using Langchain, GPT 3.5 / 4 turbo, Private, Anthropic, VertexAI, Ollama, LLMs, Groq that you can share with users ! Efficient retrieval augmented generation framework
GitHub - dubinc/dub: Open-source link management infrastructure. Loved by modern marketing teams like Vercel, Raycast, and Perplexity.
GitHub - AnswerOverflow/AnswerOverflow: Indexing Discord Help Channel Questions into Google
GitHub - elie222/inbox-zero: Open source email app to reach inbox zero fast.
GitHub - octolens/analyzemyrepo: Discover useful insights about your open-source project
GitHub - calcom/cal.com: Scheduling infrastructure for absolutely everyone.
Matomo - The Google Analytics alternative that protects your data
Famedly / Conduit · GitLab
GNU Mailman / Postorius · GitLab
GNU Mailman / HyperKitty · GitLab
More on Open Source
Programming Tips & Tricks
Code smarter, not harder—insider tips and tricks for developers.
Using Lua's Garbage Collector for Fine-Tuned Memory Management in Large Applications
#1
Leveraging Lua's Environment for Dynamic Code Execution and Security
#2
Mastering Lua's Table Manipulation: Advanced Techniques for Handling Large Data Sets
#3
Enhancing Code Readability and Debugging with Lua's Debug Library
#4
Leveraging Lua's Coroutines for Efficient Concurrency and Asynchronous Programming
#5
Leveraging Lua's Tail Call Optimization for Efficient Recursion and Avoiding Stack Overflow in Deep Recursive Functions
#6
Creating Custom Iterators in Lua for Traversing Complex Data Structures Like Graphs or Trees
#7
How to Maximize the Speed of Data Lookup in Lua Using Hash Tables and Optimized Table Management
#8
Advanced Techniques for Asynchronous Programming in Lua Using Coroutines for High-Performance Systems
#9
Mastering Efficient Memory Management in Lua with Weak Tables for Optimal Resource Utilization
#10
Error Solutions
Turn frustration into progress—fix errors faster than ever.
Visual Studio Crashes When Opening a File or Debugging a Project
#1
Visual Studio Cannot Connect to GitHub or Other Version Control System
#2
Visual Studio Freezes During Build or Debug Process
#3
Visual Studio Fails to Build Project with "Unable to Start Program" Error
#4
Visual Studio Shows "Cannot Open the Solution" Error Message When Opening a Project
#5
Visual Studio Crashes on Startup with "The application has encountered an error" Message
#6
Visual Studio Fails to Detect Changes in Files When Using Git Integration
#7
Visual Studio Crashes with "Unknown Exception" When Trying to Build Solution
#8
Visual Studio Hangs During Debugging with "Unable to Start Program" Error
#9
Visual Studio Fails to Load Solution with "The system cannot find the file specified" Error
#10
Shortcuts
The art of speed—shortcuts to supercharge your workflow.
Maximize Your Code Navigation with Cmd + Option + Left Arrow!
#1
Feel Like a Pro with Cmd + Control + D: Quickly View Definitions Like Never Before!
#2
Unlock Speed and Precision with Cmd + Shift + M: Maximize Your Productivity!
#3
Don’t Panic, Use Cmd + Option + I to Open the Developer Tools Now!
#4
Stop Wasting Time and Jump to Your File in an Instant with Cmd + Shift + O!
#5
Quickly Fix Your Code with ‘Cmd + Option + L’ for Instant Code Formatting!
#6
Transform Your Workflow with ‘Cmd + Shift + N’ to Open a New Window in No Time!
#7
Say Goodbye to Mouse: Master ‘Cmd + Shift + F’ to Search Your Entire Codebase!
#8
Struggling to Find Files? Hit ‘Cmd + P’ and Jump Right to Your File!
#9
Never Lose Your Progress Again: Use ‘Cmd + Z’ to Undo Mistakes Instantly!
#10
Made with ❤️
to provide resources in various ares.