Getting Access
How you receive the boilerplate code automatically after purchase.
Payments go through Polar with automatic GitHub access grant. You don't need to email anyone — the whole flow is automated:
- You pay → provide your GitHub username at checkout
- Polar instantly grants you read access to the private DirectoryKit repo
- You get two emails: order confirmation from Polar + repository invitation from GitHub
- You accept the GitHub invite and choose how to pull the code
Average time from payment to code on your computer: under 5 minutes.
Step 1 — Complete the checkout on Polar
On the Polar checkout page you'll enter your email and your GitHub username. The username is how Polar knows which account to add to the repo.

GitHub username is the yourname in github.com/yourname — not your email address. If you enter an email, the repo access can't be granted. Double-check before paying.
Don't have a GitHub account yet? Sign up at github.com first — it's free and takes 30 seconds. Then come back to the checkout.
Step 2 — Check your email (two messages arrive)
Within a minute of successful payment you'll receive two separate emails:
Email 1: Order confirmation from Polar
Subject line looks like "Your DirectoryKit purchase" or "Polar order confirmation." Contains your invoice and a link back to your Polar order page.

This email is for your records. No action needed.
Email 2: Repository invitation from GitHub
Subject: "[seller] has invited you to collaborate on [seller]/directorykit". Sender: noreply@github.com.

Click View invitation → it opens GitHub with an Accept invitation button. Click it.

Once accepted, the private repo appears in your GitHub account and you can proceed to the next step.
The repo doesn't show up on your account until you click Accept invitation. If you can't see the repo, your invite is still pending — see Troubleshooting below.
Step 3 — Pick how to get the code

You have three ways to get the code on your computer. Pick whichever matches how you work.
Option A — Fork
Best for: anyone who plans to receive updates to the boilerplate over time.
- Click the Fork button in the top-right
- Pick your account as the destination → Create fork


GitHub creates a copy under github.com/your-username/directorykit. Your fork stays private by default — forks of private repos are never made public automatically.
What you get:
- Full repo + full git history
- One-click Sync fork button on GitHub to pull in future boilerplate updates
- Everything you'd expect from a regular GitHub repo (issues, branches, PRs, etc.)
Limitations:
- A "forked from seller/directorykit" label sits in the repo header
- The seller can see your fork in their repo's Forks list (existence only — not your code)
- Fork counts against your GitHub storage quota
Option B — Clone + push to a new repo
Best for: buyers who want complete visual independence from the original (no "forked from" label) but still want Git history.
# 1. Clone the private repo locally
git clone https://github.com/seller/directorykit.git my-directory
cd my-directory
# 2. Create a new empty private repo on your GitHub (via the UI),
# e.g. github.com/you/my-directory — DON'T initialize with README
# 3. Point origin at your new repo and push
git remote set-url origin https://github.com/you/my-directory.git
git push -u origin mainWhat you get:
- Full git history preserved
- No visible "fork" relationship — your repo looks fully independent
- You own it completely
Limitations:
- No one-click "Sync fork" button — to pull future updates:
git remote add upstream https://github.com/seller/directorykit.git git fetch upstream git merge upstream/main - Slightly more git commands on the initial setup
Option C — Download ZIP
Best for: "I don't want to touch the terminal / Git CLI."
- Click Code (green button, top-right of the file list)
- Choose Download ZIP at the bottom of the dropdown
- Unzip anywhere

The repo is private, so you first have to accept the Polar/GitHub invitation from Step 2 — otherwise the Code button doesn't appear at all. Download ZIP just saves you the git clone step after that.
What you get:
- All source files at the time of download — no Git CLI needed after that
- Fewest total steps after accepting the invite
Limitations:
- No git history — the download is a snapshot
- No automatic updates — to get new boilerplate versions, you re-download the ZIP and diff manually
- Vercel deploy won't work directly — Vercel needs a Git repo to import from. You'll need to
git init, create a repo on GitHub, and push before deploying
Comparison at a glance
All three options require a GitHub account and an accepted invitation (Step 2) — the repo is private, so there's no way around that. The real differentiator is what you do after that.
| Criterion | Fork | Clone + new repo | Download ZIP |
|---|---|---|---|
| Needs Git CLI / terminal | ❌ (browser only) | ✅ | ❌ |
| Git history preserved | ✅ | ✅ | ❌ |
| Get future updates | one click | git fetch upstream | re-download |
| "Forked from" label | visible | — | — |
| Works with Vercel import | ✅ | ✅ | after git init + push |
| Can be made public later | ✅ | ✅ | ✅ |
| Uses GitHub storage quota | ✅ | ✅ | ❌ |
Which one should you pick?
- «I'll be working on this long-term and want updates» → Fork (Option A)
- «I want my own private repo with no visible ties to the seller» → Clone + new repo (Option B)
- «I don't want to use Git CLI / terminal» → Download ZIP (Option C) — but know that you'll need a Git repo when you're ready to deploy to Vercel
After you have the code
Head to Installation — you'll run pnpm install and get the site on localhost:3000 in about 10 minutes.
Troubleshooting
"I paid but didn't get the GitHub invitation email"
- Check spam / promotions folder — GitHub sends from
noreply@github.com, which some filters flag - Check your GitHub notifications directly — go to github.com/notifications → check for pending repository invitations in the inbox
- Check your GitHub account invites page — the URL is
github.com/<repo>/invitationsor check your settings

- Double-check the GitHub username you entered in Polar — typos are the #1 cause. If it's wrong, contact the seller so they can re-grant access to the correct username.
- Still nothing after 10 minutes? Contact the seller with your Polar order ID — they can re-trigger the grant manually.
"I got the Polar confirmation but not the GitHub invite"
This usually means the GitHub username you entered at checkout either:
- Doesn't exist on GitHub (typo)
- Has notifications disabled for repo invitations
Ask the seller to re-grant access, or open GitHub Settings → Notifications and enable email for repository invitations.
"Forking is disabled for this repository"
The seller may have disabled forks in repo settings (rare). Use Option B (clone + new repo) instead — you get the same end result.
"I forked, but I want to remove the 'forked from' label"
You can't detach a fork from the upstream via GitHub UI. Workaround:
- Create a brand-new private repo on your account
git remote set-url origin <new-repo-url>git push -u origin main- Delete the old fork from GitHub (Settings → Danger Zone → Delete)
"Sync fork gives me merge conflicts"
When you've customized config/*.config.ts and the upstream updates those same files, GitHub can't auto-merge. Options:
- Use GitHub's web UI: it'll show conflicts and let you resolve in-browser
- Pull locally:
git fetch upstream && git merge upstream/main, resolve conflicts in your editor, commit, push
Once you have the code and the installation is done, you rarely need to sync upstream — boilerplate updates are optional. Only sync when the seller announces a meaningful release.