The "VS Code" of Database Clients. Minimalist. Fast. Extensible.
Sofa Studio is an open-source database client built with Qt 6 (C++ & QML). It aims to provide a developer experience similar to VS Code but for data: a lean core, a consistent UI/UX, and a powerful add-on system.
The goal is to build a tool that feels instant and looks beautiful without sacrificing power.
- Functional Minimalism: Only the essential elements, well-designed.
- Fast by Default: Low latency interactions (scroll, filters, opening tables).
- "Beauty Mode": Transform raw database tables into readable, analyzable views with aliases and formatting.
- Extensible Architecture: A thin core with database drivers implemented as add-ons.
- 🔌 PostgreSQL Support: First-class support via the modular Add-on system.
- ⚡ Universal DataGrid: A high-performance, C++ powered grid engine capable of handling large datasets with smooth virtualization.
- 💅 Beauty Mode: Create "Views" for your tables with custom column aliases, visibility settings, and formatting—persisted locally.
- 🚀 SQL Console: Asynchronous query execution with real cancellation support and history.
- 🔒 Local-First: Connections, views, and query history are stored locally. Passwords are securely managed by the OS.
Sofa Studio uses a Hybrid Architecture:
- UI Layer (Qt Quick/QML): Handles the shell, navigation, and layout. It's completely declarative and uses a modern Design System.
- Core Layer (C++): The heavy lifter. Manages the dependency injection container, command system, and application state.
- Data Engine (C++): The
DataGridEngineandUniversal Data Model (UDM)ensure that data handling is consistent across different database drivers. - Add-ons: Database drivers (like Postgres) are isolated modules that implement standard interfaces (
IConnectionProvider,IQueryProvider).
We believe in documenting code and decisions.
- Documentation Index - Start here.
- Architecture Overview - High-level system design.
- Core Concepts - AppContext, LocalStore, and Async patterns.
- Postgres Add-on - Implementation details of the Postgres driver.
- DataGrid Engine - How the high-performance grid works.
Prerequisites: CMake 3.16+, Qt 6, C++17 Compiler.
# Configure
cmake -S . -B build
# Build
cmake --build build
# Run
./build/apps/desktop/sofa-studioFor detailed instructions and troubleshooting, see the Getting Started Guide.
- MVP (Current): Postgres support, Basic SQL Console, DataGrid, Beauty Mode v1.
- Next Steps:
- Improved UI/UX.
- Export results (CSV/JSON).
- Advanced "Beauty Mode" (saved filters, sorting).
- More database drivers (SQLite, MySQL).
- Dashboards.
This project is open source. The code is licensed under the LGPL-3.0 License.