DBDelve
DBDelve는 Rust 기반 빠른 다중 엔진 데이터베이스 클라이언트, 무료 오픈소스, 텔레메트리 없음
앱을 한 번만 작성하면 웹·macOS·iOS·Linux에서 모두 네이티브로 실행되고, AI 에이전트가 구축·실행·검증까지 할 수 있다
Write an app once. It runs natively on the web, macOS, iOS, and Linux, and an AI agent can build it, run it, see it, and test it on every one of them.
개발 도구GitHub @expo직접 설치운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
SNS에서 화제 · 지금 13위 · 출처 2곳
11월 13일 22:16 확인 · 점수는 각 플랫폼이 보여 주는 값을 마지막 확인 시각에 옮긴 것입니다. 글 본문과 댓글은 옮기지 않고, 원문이 지워지면 여기서도 빠집니다.
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Write an app once. It runs natively on the web, macOS, iOS, and Linux, and an AI agent can build it, run it, see it, and test it on every one of them.
Building an app? With the tools installed (Quick start, step 1),
run bun scripts/exact.mjs setup once, make the app with bun scripts/exact.mjs new <path>,
and read docs/start-here.md (for a website,
docs/start-here-site.md): that guide is the only required
reading. The rest of this page describes Exact for people deciding whether to use it
or working on it.
[!TIP] Try it with a coding agent. On a Mac with Xcode, Rust, Bun, and Chrome installed, give Claude Code this prompt:
Clone https://github.com/expo/exact and follow its README to make a new Exact app with `exact new`. Run `bun scripts/exact.mjs setup` once first. Make a todo list where I can add items, check them off, delete them, and see how many are left. Put the view in Contract and keep the list in `app.ts`. Write an `app.test.contract`, pass it on web, macOS, and the iOS Simulator with `scripts/agent.mjs`, then open the app for me on all three.A fresh agent given the earlier version of this prompt on a clean clone (2026-10-04, Hermes already in the machine cache, Cargo's cache warm) finished in about 57 minutes, and its tests passed on all three platforms. About 25 of those minutes were the first macOS and iOS builds, roughly 13 minutes each; later builds take a minute or two. On a machine that has lacked Hermes, its source build came first and added time. Current setup downloads and verifies the pinned host/iOS bundles once instead; ordinary builds stay offline.
One app.contract, the same screen on three hosts, captured by the agent driver. Softwear is a demonstration store you can generate from exact-templates: it shows Alternative Apparel's catalog, is not affiliated with that brand, and takes no real orders or payments.
Exact is a cross-platform application runtime. You describe your interface in Contract, a small declarative language, and you write your data logic in TypeScript or Rust. The Contract compiler turns the interface into a compact plan. On the web, that plan becomes one ES module over a ~20 KB runtime that drives the real DOM. On macOS, iOS, and Linux, a Rust runner executes the same plan, a Rust layout kernel computes every box with CSS rules, and each platform draws with its own tools: AppKit, UIKit, or a GPU painter. There is no webview and no JavaScript bridge in the UI, and no app JavaScript runs before the first pixel.
[!NOTE] Exact is pre-1.0 and changes daily. There is no API stability, no backwards compatibility, and no migration guide, by design (
rules/DEFERRED.md). This repository,exact2, is a rebuild of an earlier one ("exact1"), whose design documents are research, never authority.
The design record is a separate, private repository of numbered documents (LLPs),
expo/exact-llp, which those with access clone into llp/ (git ignores it). This
README and the guides cite it by number (LLP 1115 D7). The guides under docs/
are the public documentation.
Upgrade note (2026-10-16): Snapback mutation replies with ok: false now throw
refused(why) and expose failure(slot); see the
before/after and inherited-app commands.
Exact assumes much of the code will be written by AI agents. An agent can make an app, run it, look at it, operate it, and prove it works without a person in the loop.
tree · screenshot · tap · type · state · layout · logs · clock · prefer · perf drive the web, macOS, iOS (Simulator or a real
iPhone), and Linux through one script, scripts/agent.mjs. There are ten on purpose:
the predecessor's agent API grew to eighty wire names, one reasonable addition at a
time.clock +60000 or
clock settle and reads the result. No timing flakes, no waits.app.test.contract file runs unchanged
on any host, with no second evaluator.contract build --json gives diagnostics with
stable ids and source ranges. contract symbols gives navigation. A development
source map leads from any node on screen back to the line that declared it.
The driver refuses to drive a build older than its sources and names the rebuild.bun scripts/agent.mjs web tree "tap change-station" "type station-search Palo" \
"clock +60000" state "screenshot out.png"
Speed of the app and speed of the loop. Each budget in rules/RULES.md is tracked on
every commit, and a regression is a P0 with a name on it.
| Budget | Target |
|---|---|
| Cold start to interactive first frame | 100 ms p50 |
| Dev restart, edit to present | 100 ms p50 |
| App JavaScript executed before first pixel | none |
| Touch one line, rebuild that crate | 30 s |
| The whole blocking check suite | 65 s |
How the design keeps those numbers:
여기까지가 README 앞부분입니다. 나머지는 원문에서 읽을 수 있습니다. README 전문 보기 ↗