The open-source link attribution platform.
Learn more »
Introduction ·
Tech Stack ·
Self-hosting ·
Contributing
Dub is the modern, open-source link attribution platform for short links, conversion tracking, and affiliate programs.
Our platform powers 100M+ clicks and 2M+ links monthly, and is used by world-class marketing teams from companies like Twilio, Buffer, Framer, Perplexity, Vercel, Laravel, and more.
- Next.js – framework
- TypeScript – language
- Tailwind – CSS
- Prisma – ORM
- Upstash – redis
- Tinybird – analytics
- PlanetScale – database
- NextAuth.js – auth
- BoxyHQ – SAML/SSO
- Turborepo – monorepo
- Stripe – payments
- Resend – emails
- Vercel – deployments
You can self-host Dub for greater control over your data and design. Read this guide to learn more.
We love our contributors! Here's how you can contribute:
- Open an issue if you believe you've encountered a bug.
- Follow the local development guide to get your local dev environment set up.
- Make a pull request to add new features/make quality-of-life improvements/fix bugs.
| Package | Version |
|---|---|
| node | v23.11.0 |
| pnpm | 9.15.9 |
The table <table-name> does not exist in the current database.- Runpnpm prisma:pushpush the state of the Prisma schema file to the database without using migrations files.- The project is not building correctly locally - verify your versions of
nodeandpnpmmatch the recommended versions above. Delete allnode_modules,.next, and.turbodirectories in theappsandpackagesdirectory. You may now reinstallnode_modulesby runningpnpm installand attempt to rebuild the project withpnpm build.
This script seeds the database with development data for testing and development purposes.
Basic seeding (adds data without deleting existing data):
cd apps/web
pnpm run script dev/seedTruncate database before seeding (deletes all existing data first):