# Support

fuast is in early access. This page says what is supported today.

## CLI platforms

The CLI runs on [Bun](https://bun.sh) 1.2 or later, on macOS (arm64, x64) and Linux (x64, arm64, glibc). Windows works through WSL. Bun runs the CLI and `fuast dev`. Capsule code never gets Bun, Node, or npm APIs.

Hosted apps run on Node 24 inside V8 isolates, one per app deploy. See [isolation](https://fuast.com/docs/isolation.md).

## Browsers

App clients need JavaScript, WebSockets, `fetch`, and cookies. Current Chrome, Edge, Firefox, and Safari are supported. [Agent tools](https://fuast.com/docs/agent-tools.md) currently work only in Chrome with the WebMCP flag.

## Public API

The supported surface is what these docs describe:

- `capsule()`, the schema builders, handler wrappers, response helpers, and `ctx` from `fuast/server`.
- The exports of `fuast/client` and `fuast/ui` listed in [capsule API](https://fuast.com/docs/capsule-api.md).
- The database API in [database](https://fuast.com/docs/database.md).
- The CLI commands, inspection routes, HTTP call API, and storage routes in [reference](https://fuast.com/docs/reference.md).

Not part of the API: the realtime wire protocol, build output layout, generated file names, internal platform routes, and error message wording. Branch on error `code`s and `--json` output, not on message text.

## Compatibility

- Deploys are immutable. A running deploy keeps working when fuast ships a new CLI.
- Redeploying with a newer CLI rebuilds against the current API, and type errors block the deploy. Read the release notes and [migration guide](https://fuast.com/docs/migration-v2.md) before upgrading an old capsule.
- `fuast-env.d.ts` must match the CLI. Run `fuast types` after upgrading.
- Old aliases stay: `text()`, `httpText`, `uploadFile`, `SignInWithGoogle`, `isAuthenticated`, and endpoint URLs under `/e/`.

## Persistence

- Hosted app rows, files, logs, and env persist across deploys, rollbacks, and restarts.
- `fuast dev` keeps local rows and files in `.fuast/dev`. `fuast dev --reset` wipes them. Do not commit `.fuast/`.
- `fuast db export` writes a complete JSON backup in pages. It is not a point-in-time snapshot of a busy app.
- Archive and terminate keep data. They are not deletion requests.
- Team tables and storage quotas belong to the workspace and persist when individual apps are archived.

## Getting help

- Check `fuast logs` and `fuast inspect` first. Most failures are a handler error or a limit, and both are logged with the exact message.
- [Limits](https://fuast.com/docs/limits.md) lists every error string with the fix.
- Report bugs and security issues to support@fuast.com. For security issues, include "security" in the subject.
