Tactical web editor for unfoldingWord gateway-language translation work. 7-month lifespan, then archived.
Replaces the gatewayEdit + tcCreate + DCS-as-source-of-truth pipeline with an editor where:
- Saves land in a database first; DCS receives nightly snapshot commits, never live writes.
- Every edit is buffered in an IndexedDB outbox before it leaves the browser, so network blips and unexpected logouts don't lose work.
- Row-level optimistic concurrency lets multiple editors work the same chapter without clobbering each other.
- The UI shows multiple verses and notes at once (Timeline rail · Scripture column · Resource column), with a columns mode for ULT/UST/UHB doc-style editing and an alignment modal for word alignment.
See docs/plan.md for the full design. See docs/design/ for the source UI design bundle.
- Backend: Cloudflare Workers + Hono router + D1 (SQLite) + R2 + Durable Objects.
- Frontend: Vite + React + Material UI v6 (same component family as the legacy tools).
- Bible data:
usfm-jsfor USFM ↔ JSON round-trip; custom alignment tooling over the stored verse-object tree. - Auth: DCS OAuth → HttpOnly cookie session with CSRF-protected writes.
# install everything
npm install
# run the API (Workers + Miniflare + local D1) and the web app in parallel
npm run devThe Vite dev server proxies /api/* to the local Wrangler instance. Same code runs on Cloudflare in production via wrangler deploy.
api/ Cloudflare Workers backend (Wrangler project)
web/ React + Vite frontend
docs/ plan, design bundle, screenshots
This project builds on the work of several unfoldingWord open-source repositories:
- gateway-edit — harmonized book-package editor for gateway-language translation work.
- tc-create-app — web-based editor for translation notes, questions, and word links.
- translationCore — desktop application for checking Bible translations against checking resources.
MIT © 2026 unfoldingWord