mountsqli dev
mountsqli dev starts one server that serves your backend and the Studio
dashboard. No separate process for the UI.
Start it
Section titled “Start it”mountsqli dev --port 3737What runs on the port
Section titled “What runs on the port”| Path | Purpose |
|---|---|
/<table> |
REST list (GET) and create (POST) |
/<table>/:id |
GET / PUT / DELETE one row |
/files/<key> |
storage PUT / GET / DELETE |
/files/<key>/url |
HMAC-signed URL for GET |
/live/<channel> |
SSE subscribe |
/live/<channel>/publish |
broadcast to a channel |
/ |
MountSQLI Studio dashboard (SPA) |
/api/studio/* |
dashboard JSON: tables, query, erd, migrations, health |
REST example
Section titled “REST example”# list userscurl http://localhost:3737/users
# create a usercurl -X POST http://localhost:3737/users \ -H 'content-type: application/json' \ -d '{"email":"ada@example.com","age":36}'Storage example
Section titled “Storage example”# uploadcurl -X PUT http://localhost:3737/files/avatar.png \ -H 'content-type: image/png' \ --data-binary @avatar.png
# signed URLcurl http://localhost:3737/files/avatar.png/urlRealtime example
Section titled “Realtime example”# subscribe (SSE)curl -N http://localhost:3737/live/room-1
# publishcurl -X POST http://localhost:3737/live/room-1/publish \ -H 'content-type: application/json' \ -d '{"text":"hello"}'Why one port
Section titled “Why one port”The Studio talks to the engine only through Db / Driver / QueryPlan. Merging
it into the dev server means one command gives you the API, storage, realtime,
and a visual dashboard.
Best practices
Section titled “Best practices”- Use
devfor local full-stack work; use a real server in production. - Protect
/filesand/livewith auth in production (see API → Auth Middleware).
Common mistakes
Section titled “Common mistakes”- Hitting
/<table>before tables exist — runmigrate applyfirst. - Confusing the signed-URL endpoint (
/files/<key>/url) with the object GET.
Related
Section titled “Related”- Studio → Overview — the dashboard.
- CLI → Commands — other subcommands.
