A modern, cross-platform database manager built with Rust, Tauri 2.0, and Svelte. Manage multiple database types from a single, fast, and lightweight desktop application.
- 🗄️ Multi-database support: MySQL, PostgreSQL, SQLite, SQL Server, MongoDB, Redis, Apache Ignite
- 📝 SQL Editor: Execute queries with syntax highlighting (Monaco Editor)
- 📊 Data Grid: View and explore query results in a responsive table
- 🌲 Schema Explorer: Browse databases, schemas, tables, and columns
- 🎨 Dark/Light Theme: Comfortable viewing in any environment
- ⌨️ Keyboard Shortcuts: Boost productivity with hotkeys
- 💾 Export: Export schema and data (coming soon)
- 🖥️ Cross-platform: Windows, Linux, and macOS
Download the latest release for your platform:
| Platform | Download |
|---|---|
| Windows | .exe / .msi |
| Linux | .deb / .AppImage |
| macOS Intel | .dmg |
| macOS Apple Silicon | .dmg |
| Layer | Technology |
|---|---|
| Backend | Rust, Tauri 2.0 |
| Frontend | Svelte 4, Bootstrap 5, Monaco Editor |
| Database Drivers | sqlx, mongodb, redis, tiberius, ignite-rs |
| Build | Vite, esbuild |
- Rust (latest stable)
- Node.js 18+ and npm
- Platform-specific dependencies:
- Windows: WebView2 (usually pre-installed on Windows 10/11)
- Linux:
libwebkit2gtk-4.1-dev,libayatana-appindicator3-dev - macOS: Xcode Command Line Tools
# Clone the repository
git clone https://github.com/rajebdev/rustdbgrid.git
cd rustdbgrid
# Install dependencies
npm install
# Run in development mode
npm run tauri devnpm run tauri buildThe built application will be in src-tauri/target/release/bundle/.
rustdbgrid/
├── src/ # Svelte frontend
│ ├── components/ # UI components
│ │ ├── common/ # DataGrid, SqlEditor, etc.
│ │ ├── layout/ # MainLayout, MenuBar, StatusBar
│ │ ├── modals/ # Connection, Filter, About modals
│ │ └── context-menus/ # Right-click context menus
│ ├── stores/ # Svelte stores (state management)
│ ├── services/ # App services (theme, file, etc.)
│ └── App.svelte # Main app component
├── src-tauri/ # Rust backend
│ ├── src/
│ │ ├── commands/ # Tauri IPC commands
│ │ ├── db/ # Database drivers & connection pool
│ │ ├── models/ # Data structures
│ │ └── main.rs # Entry point
│ └── Cargo.toml # Rust dependencies
├── src-bridge/ # Node.js sidecar for Apache Ignite
└── package.json # Node dependencies
| Database | Status | Features |
|---|---|---|
| MySQL | ✅ Ready | Query, Schema Browse |
| PostgreSQL | ✅ Ready | Query, Schema Browse |
| SQLite | ✅ Ready | Query, Schema Browse |
| SQL Server | ✅ Ready | Query, Schema Browse |
| MongoDB | 🚧 Basic | Connect, Query |
| Redis | 🚧 Basic | Connect, Commands |
| Apache Ignite | 🚧 Basic | Connect via Bridge |
| Shortcut | Action |
|---|---|
Ctrl/Cmd + Enter |
Execute query |
Ctrl/Cmd + S |
Save |
Ctrl/Cmd + N |
New connection |
Ctrl/Cmd + W |
Close tab |
F5 |
Refresh |
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Tauri - Build smaller, faster, and more secure desktop apps
- Svelte - Cybernetically enhanced web apps
- Monaco Editor - Rich text editor from Microsoft VS Code
- Bootstrap - The world's most popular front-end toolkit
