Local API client and OpenAPI workspace. Import OpenAPI specs, save requests, manage environments with {{variables}}, send through a local proxy to bypass browser CORS, and inspect response history.
Docs: https://sreekarnv.github.io/rewind/ — installation, troubleshooting, API reference, and more.
Browsers can't reliably reach arbitrary APIs because CORS blocks many targets. Rewind runs a small Bun + Elysia service on 127.0.0.1:8000 that proxies every request server-side, stores workspace data in SQLite, and exposes a typed API to the SvelteKit UI. The whole thing is single-user and local — no cloud, no telemetry. See the architecture page for the full map.
Requires Bun 1.3+. Install Bun first if you don't have it.
bun install
bun run devOpen http://localhost:5173. The API runs on 127.0.0.1:8000. See the Getting started guide for what to do next, or jump straight to Variables and environments to set up {{baseUrl}}.
A Bun workspace with three packages:
@rewind/api(apps/api) — Elysia server, request proxy, SQLite persistence@rewind/web(apps/web) — SvelteKit application@rewind/docs(docs/) — VitePress documentation site
See the workspace overview for what each region of the UI does.
Workspace data lives in $XDG_DATA_HOME/rewind (Linux), ~/Library/Application Support/Rewind (macOS), or %LOCALAPPDATA%\Rewind (Windows). Override with REWIND_DATA_DIR. Full details — including the on-disk layout and storage knobs — in the Data and storage page.
bun run build:releaseProduces a single self-contained launcher plus the static web app. See Release build for what it does and how it's distributed.
bun run dev # API and web app together
bun run dev:api # API only on :8000
bun run dev:web # web app only on :5173
bun run dev:docs # docs site on :3000
bun run check # type checks
bun run test # tests
bun run build # full build (API, web, docs)
bun run build:release # release launcher
bun run verify # check + test + buildMIT — see LICENSE.
