Early access  ·  we're not open yet

Community chat the open web can find.

Your project's Discord answers help one person, then disappear. The same questions get asked again next month. We're building a chat where Q&A channels render to the open web by default. Indexed by Google, owned by you.

You are

No spam. One email when we open. Reply "remove" anytime.

Most OSS projects ended up using Discord for support. That made sense in 2019. It stopped making sense around the time you noticed you'd answered the same question for the fifth time.

The answer you wrote was good. It scrolled off the channel in three days. Nobody else who hits the same problem can find it. Some of them ask again. Some of them stop using your project. More answers don't fix this; they make it worse.

A community chat with two kinds of channels.

  • Text channels. Discord-style. Member-only.
  • Q&A channels. Threaded. Public by default. Indexed by Google. Structured for search.
  • Announcement channels. Releases, blog posts, RFCs. The stuff the web should know exists.

Any pod mixes them however you want. Promote a single thread from a private channel into the archive (with consent from anyone quoted). Pull a thread back to private without deleting it. Members get one consent prompt before their first public post, and a one-click delete later.

Hosting from us, or self-host. The archive's yours either way.

community.brine.dev/t/configure-brine-with-cloudflare-d1INDEXED · 2 WEEKS AGO
B

brine

typescript orm · community archive

HelpSetupD1 Adapter

How do I configure Brine with Cloudflare D1?

S@stevedonutMar 28, 2026setupcloudflare2 answersAnswered

I'm trying to use Brine with Cloudflare D1 as the backing database. The docs cover Postgres and SQLite but I can't find which adapter to pass for D1. Has anyone got a minimal working setup? Bonus points if you've also got migrations running via wrangler.

Accepted answer
M@maelle-brine· maintainer5 days later

D1 uses the SQLite wire protocol, so the right adapter is @brine/sqlite with the D1 driver shim. Minimal config:

// brine.config.ts
import { defineConfig } from '@brine/core';
import { d1Adapter } from '@brine/sqlite/d1';

export default defineConfig({
  adapter: d1Adapter(env.DB),
  schema: './schema.ts',
  migrations: { directory: './migrations' },
});

For migrations under Wrangler, point wrangler.toml at the same directory and run brine migrate --remote before deploying.

R@rk-edge1 week later

One more thing: if you're on Brine 0.4 the d1 shim is built into @brine/core directly, no separate package needed. Was a 2.0 plan that landed early.

Indexed thread · 2 answers · open in chat
brine community

A Q&A page from a hypothetical archive. Mockup, not yet built.

✓  Yes

  • OSS maintainers whose support lives in Discord.
  • Companies that fund OSS communities and want a better version of it.
  • Research groups, contributor communities, anywhere institutional memory matters.

✗  Not yet

  • General social communities.
  • Gaming guilds where voice is the product.
  • Anyone who needs end-to-end encryption first.

Sign up.

We're trying to find out if this is worth building before we build it. If you'd use it, tell us. If you wouldn't, tell us that too. Either answer saves us six months.

You are

No spam. One email when we open. Reply "remove" anytime.