Build and share small apps, APIs, and automations on infrastructure you control.
Create interactive React apps and TypeScript scripts with persistent SQLite storage, file uploads, secrets, and scheduled runs. Build with your coding agent through MCP, then manage source, versions, and execution in the browser.
Deploy on Cloudflare or run your own servers with celld. Keep tools private, share them with your team, or publish a public URL.
- Apps and dashboards: React interfaces with their own TypeScript backend, SQLite database, and file storage.
- APIs and webhooks: TypeScript HTTP handlers with outbound requests, per-script secrets, and persistent SQLite storage.
- Automations: run scripts or app backends on an interval or cron schedule, with pause/resume, manual runs, and execution history.
- Tools to share: give apps and scripts readable URLs, choose private or public access, and organize them in personal or team libraries.
Projects support helper files and pinned bun dependencies. Edit and restore source revisions, or remix an existing project into a new one with fresh data. Source restores preserve the current database and files; they do not roll back live data.
Install Bun 1.4.0 or newer, then start the full application locally:
bunx @sidequery/artifacts hostOpen localhost:4786 for the gallery. Connect your agent to
the HTTP MCP endpoint at http://127.0.0.1:4786/mcp to create apps and scripts.
The server runs in the foreground; Ctrl-C stops it.
The first run downloads and verifies a pinned celld binary. Apps and runtime data persist on your machine. The bundled runtime supports Apple Silicon macOS and glibc Linux on arm64 or x64.
For a persistent installation and a background service:
bun add --global @sidequery/artifacts
artifacts host start
artifacts host statusUse artifacts host install to enable startup at login. See the
host guide for lifecycle commands, data locations, and upgrades.
Both deployment options run the Artifacts application, including the gallery, HTTP MCP server, app backends, scripts, storage, and schedules. You own the infrastructure and configure who can sign in.
| Cloudflare | Your own servers with celld | |
|---|---|---|
| Run on | Cloudflare Workers and Durable Objects | Machines running celld nodes backed by a supported object store |
| Operations | Cloudflare manages the runtime | You manage nodes, TLS, storage, and rollouts |
| Setup | Cloudflare deployment | celld deployment |
Cloudflare deployment requires Workers Paid. Production CPU/memory qualification is still outstanding; see the deployment guide for current limits.
The local host command binds to loopback and uses local development state.
For a network deployment, follow the celld guide to configure production nodes
and authentication. The local host command does not provision a fleet or migrate
its data to one.
Deployments support Cloudflare Access or configurable provider sign-in through Better Auth. Personal libraries are private to their owner; admitted team members can read and edit the team library. Public links are configured separately from library ownership. See authentication and link access.
Add your deployment's HTTP MCP URL to your client:
https://your-artifacts-host/mcp
For the local host, use http://127.0.0.1:4786/mcp. Remote clients use the
configured deployment's sign-in flow. Optional workspace and library query
parameters select a workspace or the team library.
Ask your agent to read artifact_guide for React apps or script_guide for
TypeScript scripts before authoring. For example:
Build a team lunch poll with a React UI and a SQLite backend.
Create a webhook that verifies a signature using a stored secret and saves incoming events to SQLite.
Make a script that checks an endpoint every hour and records the result.
The tools support source reads and edits, typechecking, history, restore, remix, and execution. MCP Apps clients can also display interactive React artifacts inside the conversation. Clients without MCP Apps support still receive tool results and diagnostics.
For React artifacts stored alongside your work, use the file-based CLI and gallery:
artifacts write overview --file overview.artifact.tsx
artifacts typecheck overview
artifacts web --port 4784This workspace mode supports local source files, history, and stdio MCP. It does not execute scripts, app backends, or schedules, and it does not synchronize with the full host. Herdr is optional for opening artifacts beside a terminal agent. See the local workspace and MCP reference for setup, inline views, targeted edits, history, and compatibility with older Canvas sources.
- Host commands and local persistence
- Deploy to Cloudflare
- Deploy celld on your own infrastructure
- Scripts, URLs, dependencies, remix, and schedules
- App backends and SQLite
- File storage
- Client-side routing
- Runtime plugins
- Local workspace, CLI, and MCP reference
- Source map and release process
bun install --frozen-lockfile
bun run dev:cloudflareThis starts the application under local workerd at
localhost:4785. To develop against celld instead, use
bun run dev:celld with celld on your PATH; see the
runtime setup.
bun run typecheck
bun run test
bun run typecheck:cloudflare
bun run test:cloudflareBrowser tests require bun x playwright install chromium. Additional suites cover
MCP Apps and Herdr, celld
(bun run test:celld), and package installation (bun run test:package).
The root Dockerfile is an integration-test environment.