A third-party, open-source desktop GUI client for Turbopuffer - the blazing-fast vector and full-text search engine.
Note: This is an unofficial community project and is not affiliated with Turbopuffer.
⚠️ Beta Software: This application is currently in beta and is released for testing and development purposes only. Do not use with production data or systems. Features may be incomplete, unstable, or subject to breaking changes.
Manage multiple Turbopuffer connections with encrypted API key storage
Browse and manage all namespaces in your Turbopuffer instance
Explore documents with advanced filtering and search capabilities
- Connection Management: Securely store and manage multiple Turbopuffer connections with encrypted API key storage
- Namespace Browser: View and manage all namespaces in your Turbopuffer instance
- Document Explorer: Browse, search, and filter documents with an intuitive interface
- Schema Designer: Visual schema design tool for configuring vector dimensions, full-text search, and attribute indexes
- Advanced Filtering: Build complex filters using a visual filter builder or raw query mode
- Aggregations: Run aggregation queries with group-by support
- Dark Mode: Terminal-inspired dark theme
Download the latest release for your platform from the Releases page:
- macOS:
.dmgor.zip - Windows:
.exeinstaller - Linux:
.debor.rpm
See Development section below.
- Node.js 18.x or later
- npm 9.x or later
# Clone the repository
git clone https://github.com/MrPeker/turbopuffer-gui.git
cd turbopuffer-gui
# Install dependencies
npm install
# Start development server
npm run start| Command | Description |
|---|---|
npm run start |
Start development server with hot reload |
npm run package |
Package application (without installer) |
npm run make |
Build distributables for your platform |
npm run lint |
Run ESLint |
# Package without installer
npm run package
# Build installer/distributables
npm run makeFor signed macOS builds, copy .env.example to .env and configure your Apple Developer credentials:
cp .env.example .env
# Edit .env with your credentials- Electron - Cross-platform desktop framework
- React 19 - UI framework
- TypeScript - Type safety
- Vite - Build tool
- Tailwind CSS - Styling
- Radix UI - Accessible component primitives
- Zustand - State management
- @turbopuffer/turbopuffer - Official Turbopuffer SDK
- API keys are encrypted using Electron's safeStorage (OS-native encryption)
- Security fuses enabled to prevent common Electron vulnerabilities
- Context isolation and disabled Node integration in renderer
- Domain-restricted networking: Outgoing requests are limited to
*.turbopuffer.comonly
This application disables Chromium's web security (CORS) to allow the Turbopuffer SDK to communicate with the API from the renderer process. To mitigate the associated risks, all outgoing network requests are filtered and restricted to:
*.turbopuffer.com(Turbopuffer API)api.github.com/repos/MrPeker/turbopuffer-gui/*(update checks, from main process only)localhost/127.0.0.1(development only)- Local files (
file://)
Any request to other domains is blocked. This prevents potential data exfiltration even if a malicious script were to run in the renderer.
Future Improvement: API requests should be migrated from the renderer process to the main process via IPC. This would eliminate the need to disable web security and provide better isolation between the UI and network layer.
For security vulnerabilities, please see SECURITY.md.
Contributions are welcome! Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
Beta Software Notice: This application is provided in beta for testing and development purposes only. It is not intended for use with production data or systems. The software may contain bugs, incomplete features, or security vulnerabilities. Use at your own risk.
No Warranty: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Data Loss Warning: This software interacts with your Turbopuffer database and has the capability to read, write, and delete data. Always ensure you have proper backups before using this application. The authors are not responsible for any data loss or corruption.
Third-Party Project: This is an unofficial, third-party client. Turbopuffer is a trademark of Turbopuffer, Inc. This project is not affiliated with, endorsed by, or sponsored by Turbopuffer, Inc.