zeekayandHanzo Dev 4c729c3a8c
Docker Build & Push (Reusable) / build-arm64 (push) Skipped
Docker Build & Push (Reusable) / build-amd64 (push) Successful in 5m14s
Docker Build & Push (Reusable) / create-manifest (push) Skipped
Docker Build & Push (Reusable) / tag-single-arch (push) Skipped
Docker Build & Push (Reusable) / deploy (push) Skipped
Docker Build & Push (Reusable) / sbom (push) Skipped
Docker / docker (push) Successful in 5m18s
Take upstream's name off the last identifiers that carried it
What was left was all internal naming, none of it rendered — the strings a
user actually sees had already been changed. Cleared so a grep for the
upstream brand returns only the attribution that is supposed to be there.

  - components/shared/icons/papermark-sparkle.tsx deleted. It was imported
    into components/view/nav.tsx and never rendered, so this is dead code,
    not a rename.
  - components/emails/year-in-review-papermark.tsx -> year-in-review.tsx,
    and PapermarkYearInReviewEmailProps -> YearInReviewEmailProps. The email
    body was already Hanzo Dataroom throughout; only the file and the
    interface still said otherwise.
  - PAPERMARK_HEADERS -> APP_HEADERS. Its value already read from
    NEXT_PUBLIC_APP_NAME.
  - papermarkUserId -> authenticatedUserId on TusAuthenticatedRequest.
  - isPapermarkUrl -> isDataroomUrl, and its condition no longer tests
    dataroom.hanzo.ai/view/ twice — a rewrite had collapsed two upstream
    domains into one and left the || behind.
  - the shadow database in prisma/add-migration.sh, and two comments.

LICENSE and LLM.md keep every mention: AGPL-3.0 with upstream's copyright
line, and the note recording what this is forked from. Per HIP-0137 those do
not get edited, and the point of this commit is that the brand should appear
where the licence requires it and nowhere else.

Co-authored-by: Hanzo Dev <dev@hanzo.ai>
2026-08-04 18:58:57 -07:00
2026-02-20 00:10:28 +11:00
2026-02-20 00:10:28 +11:00
2026-02-19 14:37:27 +11:00
2024-09-09 17:50:25 +02:00
2026-04-17 16:58:13 -07:00
2024-01-23 19:13:55 +13:00
2026-08-04 16:52:10 -07:00
2024-05-22 18:46:55 +02:00
2025-01-17 16:08:09 +01:00
2026-08-04 14:18:37 -07:00
2025-02-28 13:40:14 +01:00
2024-05-13 14:52:25 +02:00
2025-07-17 18:15:00 +02:00

dataroom

Hanzo Dataroom

The open-source DocSend alternative.

Hanzo Dataroom - The open-source DocSend alternative | Product Hunt


GitHub Repo stars Twitter Follow License

Hanzo Dataroom 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

Hanzo Dataroom Welcome GIF

Tech Stack

Getting Started

Prerequisites

Here's what you need to run Hanzo Dataroom:

  • 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/hanzoai/dataroom.git
cd hanzo-dataroom

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:

  1. 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
    
  2. Download the Tinybird CLI from here and install it on your system.
  3. After authenticating with the Tinybird CLI, navigate to the lib/tinybird directory:
    cd lib/tinybird
    
  4. Push the necessary data sources using the following command:
    tb push datasources/*
    tb push endpoints/get_*
    
  5. 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 hanzo-dataroom
## end: pkgx-specific
pipenv update tinybird-cli

Contributing

Hanzo Dataroom 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

S
Description
No description provided
Readme AGPL-3.0
41 MiB
Languages
TypeScript 99%
JavaScript 0.5%
CSS 0.4%