All notable changes to dbfordevs are documented in this file. The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- add aditional documentation (#90)
- add bookmark import/export functionality and enhance bookmark m… (#89)
- Enable TDS 7.3 for tiberius
- integrate Redis changes management into editors (#88)
- enhance SQL completion provider to support additional SQL keywo… (#87)
- implement data comparison feature with UI and backend support (#86)
- enhance version bump script with improved CLI options and error handling
- feat: enhance MSSQL table name parsing and context switching (#84)
- feat: integrate command palette and keyboard shortcuts functionality (#82)
- refactor: standardize table name handling across database drivers (#85)
- fix: disable autocomplete on Input component (#83)
- feat: enhance MSSQL table name parsing and context switching (#84)
- feat: integrate command palette and keyboard shortcuts functionality (#82)
- refactor: standardize table name handling across database drivers (#85)
- fix: disable autocomplete on Input component (#83)
- feat: optimize build configuration and enhance lazy loading for dialogs (#81)
- feat: implement parameterized queries for CRUD operations (#80)
- refactor: replace ScrollArea with div for improved overflow handling … (#79)
- docs: fix inaccuracies across 14 documentation files
- feat: add MSSQL database management features including create and delete functionality (#78)
- feat: implement SQL Server Browser query for named instance port resolution
- feat: update Monaco editor themes and enhance DmlPreviewView styling (#76)
- feat: introduce classic themes and update theme management (#75)
- refactor: remove unused Database import from SettingsDialog component
- feat: enhance database support and features in documentation (#74)
- feat: replace Database icon with DbForDevsIcon in Sidebar and Setting… (#73)
- feat: implement schema diff functionality with UI components (#72)
- Add support for MSSQL named instances (#69)
- Enhance schema search and sidebar functionality for Cassandra support (#71)
- Fix AI table references for all database providers (#70)
- feat: add Oracle Wallet support for secure database authentication (#68)
- feat: implement SSL/TLS testing feature for database connections (#67)
- Cassandra implementation (#66)
- feat: implement AI context management and NoSQL support (#64)
- feat: introduce Solarized themes for enhanced UI customization (#63)
- Global search (#65)
- feat: implement MongoDB support with connection management and UI components (#62)
- feat: update icon assets for improved visual consistency
- feat: implement MongoDB support with connection management and UI components
- feat: add new database icon and update various icon assets
- feat: add Redis support with connection management and UI components (#61)
- refactor: adjust tree item levels in MongoDB and Redis connection components
- feat: implement connection grouping and tagging functionality (#59)
- fix: update signing key for auto-updater
- feat: implement tab context menu and pinning functionality
- feat: implement database object management for procedures, functions, triggers, and sequences (#57)
- feat: update default capabilities to include additional API URLs
- UI improvments (#58)
- feat: update default capabilities to allow additional API access
- feat: enhance documentation and user guide for view, index, and user management
- feat: add view and index management functionality (#56)
- feat: implement data grid enhancements with new features and settings
- feat: implement comprehensive query history management (#55)
- feat: add user and role management with permission controls (#54)
- fix: disable updater in development mode and update release draft status
- feat: enhance field editor with date/time pickers, FK validation, and UX improvements (#53)
- feat: show only specified database for MSSQL connections (#51)
- feat: enhance MSSQL connection string parsing to support named instances
- fix: improve CRUD operations robustness across all database providers (#52)
- fix: prevent SQL injection via identifier quoting (#49)
- docs: add comprehensive feature analysis (#50)
- feat: enhance updater components with error handling and retry options (#47)
- Fix and enhance DataGrid with JSON handling, row selection, and new row creation (#48)
- docs: comprehensive documentation update for v0.3.0 features (#46)
- Add Oracle Database Support (#45)
- Add ExplainPanel and PlanTree components for SQL execution plan visualization
- Add implementation roadmap for dbfordevs project
- Implement Query Bookmarks & Templates feature (#44)
- Table creation UI (#43)
- Implement SQL formatting feature in SqlEditor (#42)
- Update ROADMAP.md to mark completion of EXPLAIN feature tasks
- Enhance MSSQL XML parsing to handle namespace prefixes in RelOp elements
- Implement import functionality and enhance DataGrid for pending changes (#41)
- Enhance DataGrid row selection functionality and CRUD store management (#40)
- Remove PluginCard component and associated PluginData interface along… (#39)
- Enhance Tauri Plugin Integration and Update Dependencies
- Add testing infrastructure with unit and integration tests for database drivers (#35)
- UI Enhancements and AI Assistant Integration (#36)
- Enhance MSSQL support with trusted certificates and improved transaction handling (#34)
- Add SQL query preview functionality with transaction-based change detection (#32)
- Add CONTRIBUTING.md to outline contribution guidelines and best practices
- Refactor bump-version script to enhance changelog generation and commit filtering
- Enhance bump-version script with improved command logging and changelog automation
- Enhance bump-version script with improved logging and lock file updates
- OpenAI Provider Integration: Added support for OpenAI GPT models including GPT-5.2, GPT-5 Mini, and GPT-5.2 Pro
- Query Optimization Diff View: New visual component for comparing original and optimized SQL queries with:
- Side-by-side diff view with color-coded changes
- Change summary highlighting specific improvements
- Copy and Apply functionality for quick integration
- Enhanced AI Context: Improved context management including current query from editor for better understanding
- Query Variants: Support for multiple alternative query approaches in single AI response
- Comprehensive Value Handling: Expanded PostgresDriver to handle all PostgreSQL data types including:
- Binary data (BYTEA) encoded as Base64
- Complex types: Arrays, Intervals, Money, Networks (IP/MAC)
- All date/time types (chrono and time crate representations)
- JSON/JSONB with native support
- Bit vectors and custom composite types
- Multi-Statement Execution: Implemented SQL statement splitting with support for:
- Proper handling of quotes (single, double, backticks)
- Comment handling (single-line
--and block/* */) - Escaped quote detection for PostgreSQL string literals
- Transaction Support: Multiple SQL statements now execute within a transaction for atomicity
- Expanded SQLx Features: Added support for additional database types in Cargo.toml
- AI Error Handling: Enhanced error reporting with improved streaming message error management
- Session Management: Chat sessions now re-fetch after potential session creation to ensure consistency
- Sidebar UI: Removed version display from sidebar for cleaner interface
- Model ID Handling: Automatic migration of buggy model IDs from v0.2.0 early builds
- Fixed AI model ID inconsistencies from v0.2.0 early builds (haiku and gemini model IDs)
- Improved error display in streaming AI messages
- Fixed chat session synchronization issues
- AI-Powered Chat Interface: Introduced a dedicated AI panel for natural language interaction with your database
- Multi-Provider Support:
- Integrated Anthropic Claude (supporting Claude 4.5 models)
- Integrated Google Gemini (supporting Gemini 3 models)
- SQL Generation: Generate complex SQL queries from natural language descriptions with engine-specific syntax
- Query Explanation: Step-by-step breakdown of SQL logic, performance, and best practices
- Context-Awareness:
- Automatic schema context enrichment for better AI understanding
- Implemented
@mentions for tables and columns in chat prompts
- Chat Management:
- Persistent local storage for AI conversations
- Chat history session management (create, rename, delete, favorite)
- Configurable auto-cleanup for history sessions
- Secure Infrastructure:
- Native Tauri HTTP proxy for AI API calls to bypass CORS restrictions
- Secure local storage for API keys
- Sidebar Integration: Added sparkles icon to the main sidebar for quick AI access
- AI Settings: Dedicated settings section for provider configuration and API key management
- Enhanced Code Blocks: SQL code blocks in AI chat now include "Copy to Editor" and "Execute" actions
- Tauri Integration: Updated internal networking to leverage Tauri's native capabilities for AI features
- Project Structure: Organized AI logic into modular extension structure under
src/extensions/ai
- Fixed various minor UI inconsistencies in sidebar layouts
- Schema Diagram Viewing: Added context menu option in the Sidebar to view schema diagrams directly from the schema list
- Enhanced Table Diagrams:
- Integrated search functionality in TableDiagramTab for quick table lookup and navigation
- Implemented compact view mode for diagrams, optimizing layout for larger schemas
- Added loading progress indicators for improved user feedback during table operations
- Connection Operations:
- Introduced
RenameConnectionDialogfor renaming and duplicating connections with validation - Added
CreateSchemaDialogfor creating new database schemas with error handling - Enhanced
ConnectionItemcontext menu with options for renaming and creating schemas - Implemented connection list refresh after duplication to ensure sidebar consistency
- Introduced
- Table Operations:
- Introduced
RenameTableDialogfor renaming tables with validation and error handling - Added
TablePropertiesTabto display detailed table properties and constraints - Added
TableDiagramTabfor visualizing table relationships and DDL - Enhanced table properties display with schema and column information
- Introduced
- Data Grid Enhancements:
- Added
whitespace-nowrapclass to DataGrid cell rendering for improved text handling - Implemented minimum width (100px) for header and cells to ensure layout consistency
- Implemented horizontal scrolling functionality in MainContent with navigation arrow buttons
- Added dropdown select for active tabs, improving experience when managing multiple tabs
- Added
- Enhanced Clipboard Functionality:
- Implemented unified
copyToClipboardutility function using Tauri for reliable clipboard access - Added
readFromClipboardutility for reading clipboard content - Integrated DDL copying capability across ConnectionPropertiesDialog, TableDiagramTab, and TablePropertiesTab
- Added comprehensive error handling and user feedback for clipboard operations
- Implemented unified
- Editor Improvements:
- Updated CSS for better font handling in developer styles
- Added new theme properties for editor gutter and folding controls
- Enabled code folding features for improved code organization and readability
- Enhanced Monaco editor theme customization
-
Version Management:
- Created automated version bump script (
scripts/bump-version.ts) for consistent versioning across all files - Updated version to 0.1.2 across package.json, Cargo.toml, and tauri.conf.json
- Implemented dynamic version display in StatusBar and SettingsDialog
- Created automated version bump script (
-
Developer Support:
- Added @types/node as development dependency for enhanced TypeScript support
- Improved build tooling and TypeScript configuration
- Comprehensive Documentation Suite:
- Created Architecture Guide detailing technical structure and technology stack
- Created Features Guide with overview of all application capabilities
- Created Getting Started Guide for installation and first-time setup
- Created User Guide with in-depth usage instructions and best practices
- Updated README with improved navigation and feature overview
- Added links to documentation and GitHub in SettingsDialog for user convenience
-
Error Handling:
- Simplified error handling in
CreateSchemaDialogby removing unnecessary result error checks - Enhanced error handling throughout clipboard operations with user-friendly feedback
- Simplified error handling in
-
State Management:
- Refactored
useDatabasehook to improve state management and reduce redundancy - Updated hook to clear cached tables for deleted connections, preventing memory leaks
- Refactored
ConnectionItemcomponent to improve state management efficiency - Refactored
useUIStorehook to support new connection management features
- Refactored
-
Code Cleanup:
- Removed redundant text from context menu items for copying and pasting
- Removed unused
executeQueryfunction fromuseDatabasehook usage inConnectionItem
- Diagram Layout Algorithms:
- Refactored layout algorithms for improved table positioning in diagrams
- Optimized spacing in both detailed and compact diagram views
- Fixed sidebar update consistency after connection duplication
- Improved table loading logic in
ConnectionItemcomponent to prevent redundant operations - Enhanced memory management by clearing cached tables when connections are deleted
- Updated Cargo.lock for consistency across Rust dependencies
- Updated bun.lock for Node.js dependency consistency
- Added capability and permission configurations for enhanced Tauri functionality
- Updated Tauri-related permissions for improved security and functionality
The following databases continue to be fully supported:
- PostgreSQL (with connection pooling)
- MySQL 5.7+
- MariaDB
- SQLite (file-based)
- Microsoft SQL Server 2012+
- Oracle
- MongoDB
- Redis
- CockroachDB
- Cassandra
- Frontend: React 18, TypeScript, Vite, TailwindCSS, shadcn/ui
- Backend: Rust, Tauri 2.x
- Database Drivers: SQLx (async SQL support)
- UI Components: Radix UI, Lucide React icons
- Editor: Monaco Editor (VS Code core)
- State Management: Zustand
The application supports all modern platforms:
- Windows 10+
- macOS 10.13+
- Linux (Ubuntu 18.04+, Fedora 30+, and other modern distributions)
- Table diagrams may be memory-intensive for databases with hundreds of tables
- Some advanced database-specific features may require additional setup
- Plugin system foundation is in place but not yet fully exposed to users
- Three-panel Layout: Sidebar for connections/schema, main content area for queries/data, collapsible side panel for details
- Virtualized Scrolling: Efficient rendering of large datasets with smooth scrolling
- Theme Support: Light and dark theme modes with system theme detection
- Monaco Editor Integration: VS Code-powered editor with rich editing capabilities
- Code Intelligence:
- SQL keyword autocomplete
- IntelliSense support
- Custom syntax highlighting with theme-aware styling
- Multi-line query support
- Multi-Database Support:
- PostgreSQL
- MySQL/MariaDB
- SQLite
- And foundation for additional databases
- Connection Management:
- Save and manage multiple database connections
- Connection testing and validation
- Secure credential handling
- Data Grid: High-performance grid component with:
- Sorting capabilities
- Pagination support
- Virtualized rendering for large datasets
- Schema Tools: View table structures and relationships
- DDL Viewing: Display CREATE TABLE statements
- Plugin Architecture: Foundation for extending functionality
- Plugin Marketplace UI: Browse and manage plugins
- Connection String Validators:
- C# connection string validator
- Node.js connection string validator
- Python connection string validator
- Modern Design: Clean, developer-friendly interface
- Responsive Layout: Adapts to different screen sizes
- Context Menus: Right-click menus for common operations
- Frontend Framework: React 18 with TypeScript
- Build Tool: Vite with React plugin
- Styling: TailwindCSS with shadcn/ui components
- Desktop Framework: Tauri 2.x (Rust backend)
- Database Access: SQLx with async support
- State Management: Zustand for lightweight state
- @monaco-editor/react: ^4.6.0
- @tauri-apps/api: ^2.1.1
- @tauri-apps/cli: ^2.1.0
- @tanstack/react-table: ^8.20.5
- React: ^18.3.1
- TypeScript: ~5.6.3
- TailwindCSS: ^3.4.16
- Vite: ^6.0.1
- Windows: 10 and later
- macOS: 10.13 and later
- Linux: Ubuntu 18.04+, Fedora 30+, and other modern distributions
- RAM: 512 MB
- Disk Space: 100 MB free
- Display Resolution: 1024x768
- RAM: 2+ GB
- Disk Space: 500 MB free
- Display Resolution: 1920x1080
- Recent OS versions
This is the inaugural release of dbfordevs, a lightweight database client built for developers. The application is designed with simplicity and performance in mind, providing a modern alternative to traditional, heavyweight database management tools.
Design Philosophy:
- Lightweight and fast
- Developer-first features
- Cross-platform compatibility
- Extensible architecture
- Beautiful and intuitive UI
Use Cases:
- Quick database exploration and querying
- Development environment database management
- Learning SQL and database concepts
- Testing queries before production execution
- Data inspection and validation
dbfordevs follows Semantic Versioning:
- MAJOR: Breaking changes (0.x.x currently indicates early development)
- MINOR: New features in a backwards-compatible manner
- PATCH: Bug fixes and maintenance
Contributions are welcome! Please see the Architecture Guide for development setup and guidelines.
dbfordevs is available under the MIT License with support for community plugins and commercially licensed extensions.