Skip to content

Commit b1034ca

Browse files
committed
docs: add funding config + Support sections
- Add .github/FUNDING.yml (GitHub Sponsors, Ko-fi, Buy Me a Coffee, thanks.dev, Open Collective) to enable the repo Sponsor button. - Add a Support section to the README mirroring the GitHub profile (Sponsors / Ko-fi / Buy Me a Coffee / Open Collective badges) + a TOC entry. - Add a Support section to the website (GitHub Sponsors as the primary CTA, the rest secondary) and a Sponsor link in the footer; funding links centralized in lib/site.ts.
1 parent 9a66830 commit b1034ca

6 files changed

Lines changed: 76 additions & 1 deletion

File tree

.github/FUNDING.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
github: nixrajput
2+
ko_fi: nixrajput
3+
buy_me_a_coffee: nixrajput
4+
thanks_dev: u/gh/nixrajput
5+
open_collective: nixrajput

README.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ A single binary that turns the painful, error-prone sprawl of `pg_dump` → `pg_
3131
- [Development](#development)
3232
- [Roadmap](#roadmap)
3333
- [Contributing](#contributing)
34+
- [Support](#support)
3435
- [License](#license)
3536

3637
## Why siphon
@@ -282,6 +283,19 @@ Adding a new database engine? See [docs/DRIVERS.md](docs/DRIVERS.md) for the dri
282283

283284
Concept docs: [docs/INCREMENTAL.md](docs/INCREMENTAL.md) (incremental backup + restore), [docs/CROSS_ENGINE.md](docs/CROSS_ENGINE.md) (cross-engine sync + the type-map matrix), and [docs/CDC.md](docs/CDC.md) (continuous CDC sync, same- and cross-engine). All three work end-to-end; live DB behavior is integration-tested in CI.
284285

286+
## Support
287+
288+
siphon is free and open source. If it saves you time, you can support its continued development — every bit helps and is genuinely appreciated. ❤️
289+
290+
<div align="center">
291+
292+
[![Sponsor on GitHub](https://img.shields.io/badge/Sponsor_on_GitHub-%23EA4AAA.svg?style=for-the-badge&logo=githubsponsors&logoColor=white)](https://github.com/sponsors/nixrajput)
293+
[![Ko-fi](https://img.shields.io/badge/Support_on_Ko--fi-FF5E5B?style=for-the-badge&logo=ko-fi&logoColor=white)](https://ko-fi.com/nixrajput)
294+
[![Buy Me A Coffee](https://img.shields.io/badge/Buy_Me_A_Coffee-FFDD00?style=for-the-badge&logo=buy-me-a-coffee&logoColor=black)](https://www.buymeacoffee.com/nixrajput)
295+
[![Open Collective](https://img.shields.io/badge/Open_Collective-7FADF2?style=for-the-badge&logo=opencollective&logoColor=white)](https://opencollective.com/nixrajput)
296+
297+
</div>
298+
285299
## License
286300

287301
[MIT](LICENSE) © [Nikhil Rajput](https://github.com/nixrajput)

web/app/page.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { Terminal } from "@/components/Terminal";
55
import { InstallCommand } from "@/components/InstallCommand";
66
import { HeroInstall } from "@/components/HeroInstall";
77
import { DeveloperSection } from "@/components/DeveloperSection";
8+
import { SupportSection } from "@/components/SupportSection";
89
import { Reveal } from "@/components/Reveal";
910
import { ExtLink } from "@/components/ExtLink";
1011
import { REPO_URL, INSTALL_CMD, ENGINES } from "@/lib/site";
@@ -223,6 +224,8 @@ export default function Home() {
223224

224225
<DeveloperSection />
225226

227+
<SupportSection />
228+
226229
<SiteFooter />
227230
</>
228231
);

web/components/SiteFooter.tsx

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import Link from "next/link";
2-
import { REPO_URL, DEVELOPER, SITE_NAME } from "@/lib/site";
2+
import { REPO_URL, DEVELOPER, SITE_NAME, FUNDING } from "@/lib/site";
33
import { ExtLink } from "@/components/ExtLink";
44

55
// The closing credit. Three columns on wide screens — the project, the docs,
@@ -76,6 +76,14 @@ export function SiteFooter() {
7676
GitHub (@{DEVELOPER.handle})
7777
</ExtLink>
7878
</li>
79+
<li>
80+
<ExtLink
81+
href={FUNDING[0].url}
82+
className="text-(--muted) no-underline hover:text-(--paper)"
83+
>
84+
Sponsor
85+
</ExtLink>
86+
</li>
7987
</ul>
8088
</div>
8189
</div>

web/components/SupportSection.tsx

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import { FUNDING } from "@/lib/site";
2+
import { ExtLink } from "@/components/ExtLink";
3+
4+
// Support / funding section. Mirrors the GitHub profile's "Support My Work":
5+
// a short ask + the funding links. GitHub Sponsors leads as the primary action
6+
// (amber, the page's single call-to-action color); the rest are secondary.
7+
export function SupportSection() {
8+
const [primary, ...rest] = FUNDING;
9+
10+
return (
11+
<section className="mx-auto max-w-3xl px-6 py-20 text-center">
12+
<p className="eyebrow mb-4">support</p>
13+
<h2 className="mb-4 text-3xl">Free and open source</h2>
14+
<p className="mx-auto mb-8 max-w-md leading-relaxed text-(--muted)">
15+
siphon is free to use. If it saves you time, you can support its continued development —
16+
every bit helps and is genuinely appreciated. ❤️
17+
</p>
18+
<div className="flex flex-wrap items-center justify-center gap-3">
19+
<ExtLink
20+
href={primary.url}
21+
className="rounded-lg bg-(--amber) px-5 py-3 font-medium text-(--ink) no-underline transition-opacity hover:no-underline hover:opacity-90"
22+
>
23+
{primary.label}
24+
</ExtLink>
25+
{rest.map((f) => (
26+
<ExtLink
27+
key={f.label}
28+
href={f.url}
29+
className="rounded-lg border border-(--line) px-5 py-3 font-medium text-(--paper) no-underline transition-colors hover:border-(--amber) hover:no-underline"
30+
>
31+
{f.label}
32+
</ExtLink>
33+
))}
34+
</div>
35+
</section>
36+
);
37+
}

web/lib/site.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,11 @@ export const DEVELOPER = {
2828

2929
// Engines siphon speaks, used by the hero version pill fallback + engines strip.
3030
export const ENGINES = ["PostgreSQL", "MySQL", "MariaDB"] as const;
31+
32+
// Funding platforms for the Support section, mirroring .github/FUNDING.yml.
33+
export const FUNDING = [
34+
{ label: "GitHub Sponsors", url: "https://github.com/sponsors/nixrajput" },
35+
{ label: "Ko-fi", url: "https://ko-fi.com/nixrajput" },
36+
{ label: "Buy Me a Coffee", url: "https://www.buymeacoffee.com/nixrajput" },
37+
{ label: "Open Collective", url: "https://opencollective.com/nixrajput" },
38+
] as const;

0 commit comments

Comments
 (0)