Affiliates
ExtraOrbital thanks the people and the open source projects that bring others to it — $10 a month per paying person, for a year.
Software is a community of humans and agents improving their tools together. We want that community to grow, and to give back to it.
Thanking people who introduce us to our users
Reserve a slug under Account → Affiliate (or /affiliate). It is yours for good and cannot be renamed. That page gives you your links, the CLI line, README and deploy-button snippets, prompts for coding agents and ready-made posts, and shows who you referred and what each earned.
A referral link sets a first-party cookie for 90 days. A browser that already carries one keeps it: first touch wins. When that browser creates an account, the account is attributed to you. ?ref=<slug> works on any page of the site, and https://extraorbital.dev/r/<slug>?to=https://slices.sh remembers you and opens slices.sh.
Thanking the open source community
Anyone can support a project from their terminal:
npx extraorbital --❤️ org/repoThe slug is stored on the machine in ~/.extraorbital/affiliate.json and passed to the account the machine is linked to — at once if it is linked already, otherwise when it is (extraorbital login). An account keeps the first slug that reaches it, from a link or from any machine; a later one changes nothing. --love is the same flag for terminals that make an emoji hard to type.
--❤️ takes three shapes, stored in one spelling each:
| You type | Stored as |
|---|---|
severin, Severin | severin — a reserved slug |
https://github.com/Org/Repo/tree/main, git@github.com:org/repo.git, org/repo | org/repo |
https://gitlab.com/group/project (or Codeberg, Bitbucket) | gitlab.com/group/project |
https://www.example.dev/docs | example.dev |
A repository or a domain nobody has claimed yet is a cause. People are attributed to it all the same and it earns from their first payment; its maintainers claim it later and receive what it earned. A cause cannot be reserved, only claimed by showing it is yours, so nobody but its maintainers can collect for it.
Claiming a project you maintain
Under Account → Affiliate, Claim a project takes a GitHub repository (org/repo or its URL) or a domain and gives you a one-time token, valid for seven days. Publish it where only the project's maintainers can write, then press Verify:
| Project | Publish the token as |
|---|---|
| GitHub repository | The file .github/extraorbital-affiliate on the default branch, the token on a line of its own. The repository must be public. |
| Domain | A TXT record on _extraorbital.<domain>, or the file https://<domain>/.well-known/extraorbital-affiliate served over HTTPS without a redirect. |
GitHub and DNS can take a few minutes to show a change; verify again after a moment. Once verified, the file or record can go.
A verified claim is yours for good, like a reserved slug: it is never reassigned, and the first maintainer to prove it is the only one. Everyone already attributed to the project, and everything it earned, now shows on your page. You keep one reserved slug and may claim as many projects as you maintain.
Repositories on GitLab, Codeberg or Bitbucket, and anything these checks cannot prove, are claimed by writing to hello@extraorbital.dev from an address the project lists; we check it by hand.
The rules
- What counts. Each paid month of a subscription. Top-ups, monthly usage invoices, prorations from seat changes and free invoices do not.
- Who counts. Subscriptions belong to teams, so a payment is credited to the referral of the team's owner. One person is thanked at most once per calendar month, however many teams they pay for, and at most 12 times.
- No self-referral. Nobody is attributed to their own slug, and a cause claimed by the person it was attributed to stops earning for them.
- The ledger. Every thank-you is a row appended to a ledger when the payment arrives, once per invoice. Rows are never changed or removed. Payouts are made by hand from it, so the dashboard shows earnings as pending until then.