Diffinery

codician/diffinerypublic

Open-source, agent-first GitHub and GitHub Actions alternative that runs on your own Cloudflare account: git hosting, pull requests, code review and drop-in GitHub Actions YAML on Workers, Durable Objects, R2 and Containers.

28 lines · 1.3 KBRaw History
1# Team preferences
2
3These are strong defaults from the project owners. Follow them where they fit,
4and use judgment where they don't.
5
6## Sign-in: passkeys first
7
8- People sign in with passkeys (WebAuthn). Don't add passwords.
9- New people create their passkey from their invite link.
10- Recovery goes through a one-time sign-in link from an admin, or email
11 verification through Cloudflare Access at `/auth/access`. Access guards only
12 that path.
13- Machines (git, the CLI, MCP clients, runners) use Diffinery tokens, never
14 browser sessions.
15
16## UI: Kumo
17
18- The look follows [Kumo](https://kumo-ui.com), Cloudflare's design system:
19 its color tokens (light and dark), radii, type and focus styles. The tokens
20 live as CSS variables in `apps/diffinery/src/web/assets.ts`.
21- Never use a native `<select>`, checkbox or radio. Use the Kumo components
22 through `KSelect`, `KCheckbox` and `KRadio` from
23 `apps/diffinery/src/web/kumo.tsx`. The server renders a placeholder and the
24 hidden inputs the form posts; a small client bundle (`apps/diffinery/islands/`)
25 mounts the real Kumo component over it. Kumo's stylesheet is confined to those
26 islands so it can't restyle the rest of the page.
27- For anything else interactive (menus, dialogs, pickers), reach for the Kumo
28 component the same way rather than hand-rolling one.