Sift is a database server and desktop client written in Rust. It supports PostgreSQL and SQL Server.
The server manages connections, query sessions, schema data, query execution, history, audit records, and shared rooms. Clients use its versioned HTTP and WebSocket API.
The same server can run beside a local desktop client or as a daemon for multiple users. Shared query text is synchronized between room members. Results, schemas, sessions, and connections remain on the server.
Desktop preferences are stored in a local settings.toml. See
docs/SETTINGS.md.
- Keep product behavior in the server and expose it through the public API.
- Support local single-user and hosted multi-user use with the same server.
- Support shared rooms, query editing, connections, and results.
- Keep query execution and navigation responsive with cursors, caching, prefetching, and connection pools.
- Keep the protocol versioned and usable by third-party clients.
docs/PLANS/server-build-list-v2.md— current backlogdocs/DECISIONS.md— design decisionsdocs/PLANS/phase-m-gpui-desktop.md— desktop plandocs/PERFORMANCE.md— desktop frame and memory budgetsdocs/INSTANCE-CONFIG.md— instance configurationdocs/REMOTE-AND-UPDATES.md— remote use and updatesdocs/EXTENSIONS.md— extensionsdocs/keyboard-wiki/index.html— keyboard language defaults and rollout reference