Skip to content

Commit 1db95ab

Browse files
committed
docs: add custom landing page
1 parent 749c940 commit 1db95ab

5 files changed

Lines changed: 410 additions & 0 deletions

File tree

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@
66

77
Fast local PostgreSQL database branching for migrations, schema testing, and isolated development workflows.
88

9+
The pitch is simple: treat your local database like code. Create a disposable branch in seconds, test the migration, inspect the diff, and drop it when you are done.
10+
11+
Live page: [merup.me/dbfork](https://merup.me/dbfork/)
12+
913
`dbfork` is a Go CLI for local Postgres development. It creates instant database branches with PostgreSQL's native `CREATE DATABASE ... TEMPLATE` feature, so you can clone your development database in seconds, test migrations safely, inspect schema drift, and tear branches down when you are done.
1014

1115
- Clone a local PostgreSQL database in seconds instead of waiting on `pg_dump | pg_restore`

docs/.nojekyll

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+

docs/assets/dbfork-demo.gif

102 KB
Loading

docs/index.html

Lines changed: 163 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,163 @@
1+
<!doctype html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="utf-8" />
5+
<meta name="viewport" content="width=device-width, initial-scale=1" />
6+
<title>dbfork | Local PostgreSQL database branching in seconds</title>
7+
<meta
8+
name="description"
9+
content="Create disposable local PostgreSQL database branches in seconds for migrations, schema testing, and isolated development."
10+
/>
11+
<meta property="og:title" content="dbfork | Local PostgreSQL database branching in seconds" />
12+
<meta
13+
property="og:description"
14+
content="Clone a local Postgres database with CREATE DATABASE ... TEMPLATE, test migrations safely, and tear branches down when you are done."
15+
/>
16+
<meta property="og:type" content="website" />
17+
<meta property="og:url" content="https://merup.me/dbfork/" />
18+
<link rel="preconnect" href="https://fonts.googleapis.com" />
19+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
20+
<link
21+
href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap"
22+
rel="stylesheet"
23+
/>
24+
<link rel="stylesheet" href="./styles.css" />
25+
</head>
26+
<body>
27+
<div class="shell">
28+
<header class="site-header">
29+
<a class="brand" href="https://github.com/Meru143/dbfork">dbfork</a>
30+
<nav class="nav">
31+
<a href="#why">Why</a>
32+
<a href="#speed">Speed</a>
33+
<a href="#install">Install</a>
34+
<a href="https://github.com/Meru143/dbfork">GitHub</a>
35+
</nav>
36+
</header>
37+
38+
<main>
39+
<section class="hero">
40+
<div class="hero-copy">
41+
<p class="eyebrow">Disposable local Postgres branches</p>
42+
<h1>Clone a development database in seconds, not minutes.</h1>
43+
<p class="lede">
44+
dbfork uses PostgreSQL's native <code>CREATE DATABASE ... TEMPLATE</code>
45+
path to create local database branches fast enough for daily development,
46+
migration testing, schema diffing, and feature-isolated workflows.
47+
</p>
48+
<div class="actions">
49+
<a class="button primary" href="https://github.com/Meru143/dbfork">
50+
Star on GitHub
51+
</a>
52+
<a class="button secondary" href="#install">Install dbfork</a>
53+
</div>
54+
<div class="pills">
55+
<span>PostgreSQL templates</span>
56+
<span>migration safety</span>
57+
<span>schema diff</span>
58+
<span>local-first</span>
59+
</div>
60+
</div>
61+
62+
<div class="hero-visual">
63+
<img src="./assets/dbfork-demo.gif" alt="dbfork demo showing local database branching" />
64+
</div>
65+
</section>
66+
67+
<section id="why" class="section">
68+
<div class="section-head">
69+
<p class="eyebrow">Why dbfork</p>
70+
<h2>The missing branch workflow for local Postgres development.</h2>
71+
<p>
72+
Feature branches for code are normal. Feature branches for the local
73+
database usually are not, which is why migration testing and schema
74+
experiments still fall back to slow dump and restore loops. dbfork closes
75+
that gap with a workflow that feels instant enough to use every day.
76+
</p>
77+
</div>
78+
79+
<div class="grid">
80+
<article class="feature">
81+
<h3>Server-side clone path</h3>
82+
<p>
83+
PostgreSQL duplicates the database on disk instead of streaming rows
84+
through a client process, which is why the branching loop feels fast.
85+
</p>
86+
</article>
87+
<article class="feature">
88+
<h3>Safe migration testing</h3>
89+
<p>
90+
Give a migration its own disposable branch, run the change, inspect the
91+
result, and drop the branch when the experiment is over.
92+
</p>
93+
</article>
94+
<article class="feature">
95+
<h3>Schema diff workflow</h3>
96+
<p>
97+
Compare the branch against the source database before merge so drift and
98+
accidental changes show up before they become shared state.
99+
</p>
100+
</article>
101+
<article class="feature">
102+
<h3>No extra infrastructure</h3>
103+
<p>
104+
No hosted service, no storage layer, and no heavy multi-container branch
105+
system. If you already have local Postgres, you already have the primitive.
106+
</p>
107+
</article>
108+
</div>
109+
</section>
110+
111+
<section id="speed" class="section">
112+
<div class="section-head">
113+
<p class="eyebrow">Speed story</p>
114+
<h2>Use the local database like code, not like a fragile shared pet.</h2>
115+
<p>
116+
The public benchmark framing in the repo is the right mental model: for a
117+
1 GB development database, dump and restore usually takes minutes, while
118+
template cloning typically finishes in a few seconds on the same machine.
119+
</p>
120+
</div>
121+
122+
<div class="compare">
123+
<div class="compare-card strong">
124+
<h3>dbfork</h3>
125+
<p class="metric">1 to 3 seconds</p>
126+
<p>Server-side template clone, built for repeated use during active development.</p>
127+
</div>
128+
<div class="compare-card">
129+
<h3>pg_dump | pg_restore</h3>
130+
<p class="metric">2 to 5 minutes</p>
131+
<p>Good for backup-style workflows, too slow for every migration and feature branch.</p>
132+
</div>
133+
</div>
134+
</section>
135+
136+
<section id="install" class="section">
137+
<div class="section-head">
138+
<p class="eyebrow">Install</p>
139+
<h2>Branch, test, inspect, drop.</h2>
140+
<p>
141+
dbfork is most convincing when you can try it against your existing local
142+
instance immediately. The page keeps the install and first-use path short on purpose.
143+
</p>
144+
</div>
145+
146+
<div class="install-grid">
147+
<pre><code>go install github.com/Meru143/dbfork/cmd/dbfork@latest
148+
149+
dbfork create feature_migration
150+
dbfork diff feature_migration
151+
dbfork drop feature_migration --force</code></pre>
152+
<pre><code>Use it for:
153+
154+
- migration rehearsals
155+
- schema experiments
156+
- isolated feature branches
157+
- branch-vs-source diffing</code></pre>
158+
</div>
159+
</section>
160+
</main>
161+
</div>
162+
</body>
163+
</html>

0 commit comments

Comments
 (0)