Skip to content

Releases: Rohithgilla12/data-peek

0.14.0

27 Jan 06:11
ed455c3

Choose a tag to compare

What's Changed

  • fix: Add SSL certificate verification options for cloud databases by @Rohithgilla12 in #95

Full Changelog: v0.13.2...v0.14.0

0.13.1

27 Jan 06:11
16910b9

Choose a tag to compare

What's Changed

  • fix(desktop): update macos icon padding and fix build config types by @jefillysh in #83
  • Feature - Password Visibility Toggle in ADD/EDIT connection form. by @shutterscripter in #92

New Contributors

Full Changelog: v0.13.0...v0.13.1

0.13.0

07 Jan 02:30

Choose a tag to compare

What's Changed

Full Changelog: v0.12.0...v0.13.0

0.12.0

01 Jan 04:46

Choose a tag to compare

✨ New Features

SQL Export (INSERT Statements)

  • Export query results and tables as SQL INSERT statements
  • Database dialect support (PostgreSQL, MySQL, MSSQL)
  • Batch INSERT mode for efficient exports
  • Optional transaction wrapper (BEGIN/COMMIT)
  • Proper type handling for dates, UUIDs, binary data, BigInt, arrays, and JSON
  • Available in query results dropdown and table right-click menu

Query Snippets

  • 14 built-in SQL snippet templates (SELECT, INSERT, JOIN, aggregates, DDL)
  • Snippet sidebar with search and category filtering
  • Autocomplete in Monaco editor via trigger prefixes (sel, ij, cnt, etc.)
  • Create and edit custom snippets

Query History Search

  • Search through query history in sidebar and dialog
  • Filter and find previous queries quickly

Materialized View Support (PostgreSQL)

  • Display materialized views in schema explorer with teal styling
  • Filter toggle for materialized views
  • Column fetching for materialized views

Connection Duplication

  • Duplicate button in connection dropdown for quick cloning

Window Management

  • Dynamic Window menu listing all open windows
  • Focus windows from the menu

🐛 Fixes

  • Fixed window title showing "Data Peek" instead of "Electron" in taskbar/dock

🔧 Improvements

  • Added SQL keywords for autocomplete: MATERIALIZED, REFRESH, CONCURRENTLY, DATA
  • SEO and sitemap improvements for web app

What's Changed

Full Changelog: v0.11.0...v0.12.0

0.11.0

24 Dec 14:01

Choose a tag to compare

Performance Improvements

Virtualized Data Tables (#80)

Large query results no longer cause typing lag in the Monaco editor. This release introduces TanStack Virtual row virtualization for datasets with more than 50 rows.

Key Improvements:

  • Reduced DOM Nodes: From ~15,000 to ~1,000 for 500-row datasets
  • Eliminated Typing Delay: Previously 5+ seconds of lag due to React reconciliation overhead
  • Header/Row Width Sync: ResizeObserver keeps virtualized rows aligned with header columns
  • Full Query Results: Multi-statement queries now show all returned rows with client-side pagination instead of being incorrectly limited to page size

Accessibility:

  • Added role="rowgroup" and aria-rowcount to virtualized container
  • Added role="row" and aria-rowindex to each virtualized row
  • Added role="cell" to each virtualized cell
  • Screen readers can now navigate virtualized tables correctly

New Features

Schema Focus for Supabase Users (#84)

If you work with Supabase or databases with many default schemas, you can now focus on a single schema in the Schema Explorer. This filters out all other schemas, making it easier to navigate your actual tables.

Multiline Text Editor (#84)

Long text columns now get proper editing support:

  • Auto-Opens: Automatically opens for content longer than 100 characters or containing newlines
  • Expand Button: Click to open the multiline editor for any text column
  • Full Content View: No more truncated edits for JSON blobs or long descriptions

Redesigned Add Widget Dialog (#84)

The widget creation experience has been streamlined from a multi-step wizard to a single-page form:

  • Faster Configuration: All options visible at once
  • Live Data Preview: See first 5 rows of query results while configuring
  • SQL Autocompletion: Monaco editor with schema-aware suggestions
  • Compact UI: Segmented controls, better spacing, and improved layout

Edit Widget Dialog (#84)

New dedicated dialog for editing existing widgets with all configuration options in a single view. Previously, the Configure menu item wasn't wired up correctly—now it works.


Bug Fixes

Fixed Enum Data Type Handling (#84)

Enum columns now work correctly in edit mode. Added enumValues to ColumnInfo so dropdown options populate properly.

Fixed Duplicate LIMIT Clause (#84)

Widget data preview no longer fails with duplicate LIMIT clauses when previewing queries.

Fixed Keyboard Shortcuts in Dialogs (#84)

Keyboard shortcuts no longer intercept input when typing in dialog fields.

Fixed Result Switching in Table Preview (#80)

Multi-statement query results now switch correctly between tabs by using the active result's columns.

What's Changed

  • fix: virtualize data tables to eliminate typing lag by @Rohithgilla12 in #80
  • feat: improve UX with redesigned add widget dialog and feedback improvements by @Rohithgilla12 in #84

Full Changelog: v0.10.1...v0.11.0

0.10.1

18 Dec 17:07

Choose a tag to compare

Bug Fixes

  • SSH Tunnel: Fixed connection timeout when using SSH jump servers to connect to remote databases. The tunnel was incorrectly forwarding to localhost on the SSH server
    instead of the configured database host. (#77)

What's Changed

  • fix: SSH tunnel connection timeout when using jump servers by @Rohithgilla12 in #79

Full Changelog: v0.10.0...v0.10.1

0.10.0

18 Dec 15:30

Choose a tag to compare

New Features

Dashboard Widgets (#72, #75)

Build custom dashboards with live SQL-powered widgets. This is a major new feature that brings data visualization directly into data-peek.

Widget Types:

  • KPI Widgets: Display single metrics with number, currency, percent, or duration formatting
  • Chart Widgets: Visualize data with bar, line, area, or pie charts
  • Table Widgets: Show query results in a compact table format

Dashboard Features:

  • Drag-and-Drop Grid Layout: Arrange widgets freely using react-grid-layout
  • Auto-Refresh: Configure dashboards to refresh on a schedule (every minute, 5 minutes, 15 minutes, or custom intervals)
  • AI Widget Suggestions: Get intelligent widget recommendations based on your schema
  • Import/Export: Share dashboards between instances or team members
  • Keyboard Shortcuts: r to refresh, e to toggle edit mode, n/a to add widget
  • Demo Queries: Included SQL examples for building SaaS metrics dashboards

Data Sources:

  • Use saved queries or write inline SQL
  • Each widget executes its own query against the connected database
  • Results cached with configurable refresh intervals

Query Scheduling with Cron Support (#72)

Schedule queries to run automatically in the background using node-cron for reliable execution.

Schedule Options:

  • Presets: Every minute, every 5 minutes, every 15 minutes, hourly, daily, weekly
  • Custom Cron: Full cron expression support for complex schedules

Features:

  • Desktop Notifications: Get notified when scheduled queries complete or fail
  • Run History: View execution history with timing and status
  • Pause/Resume: Temporarily pause scheduled queries without deleting them
  • Connection-Aware: Queries run against their configured database connection
  • Error Tracking: Failed runs are logged with error details

Improvements

Web App Blog with MDX (#70)

The data-peek website now includes a blog section with MDX support for rich content and code examples.

Dashboard Auto-Refresh Reliability

  • Multi-window event emission ensures all windows receive refresh updates
  • Atomic scheduled query storage using mutex to prevent race conditions
  • Error handling improvements for widget execution failures

Code Quality

  • Removed unnecessary 'use client' directives from Electron app components
  • Split add-widget-dialog into smaller modules with useReducer for better maintainability
  • Applied consistent Prettier formatting across the codebase

Bug Fixes

Query Preview Trailing Semicolons

Fixed an issue where trailing semicolons in saved queries would cause LIMIT clause addition to fail. The preview query builder now properly strips semicolons before appending LIMIT.

Dashboard Deletion Cleanup

Fixed memory leaks where auto-refresh jobs would continue running after a dashboard was deleted.

Widget Import ID Generation

Fixed an issue where imported dashboards would have missing widget IDs, causing rendering failures.

React Grid Layout v2 Compatibility

Added local GridLayoutItem type definition to fix TypeScript compatibility with react-grid-layout v2.

What's Changed

New Contributors

Full Changelog: v0.9.0...v0.10.0

0.9.0

16 Dec 13:14

Choose a tag to compare

What's Changed

New Features:

  • Query Performance Indicator that analyzes EXPLAIN plans in real-time, detects expensive operations (sequential scans, nested loops, high-cost nodes), and auto-generates index suggestions with ready-to-use CREATE INDEX statements
  • Blog section on the marketing site with MDX support, featuring technical deep-dives and product documentation

Internal Improvements:

  • Query fingerprinting for intelligent caching of performance analysis
  • Terminal-themed blog design with reading progress indicator
  • Dynamic sitemap generation including blog posts

Full Changelog: v0.8.1...v0.9.0

0.8.1

15 Dec 11:05

Choose a tag to compare

New Features:

  • Server-side pagination for table previews with page size selector (25-500 rows), jump-to-page, and efficient LIMIT/OFFSET queries

Bug Fixes:

  • Removed backdrop blur from AI panel overlay that was making content unreadable

Internal Improvements:

  • DRY refactoring with new hooks (useCopyToClipboard, usePanelCollapse, useExecutionPlanResize)
  • Extracted connection string parser to dedicated module
  • Removed unused dependencies and types
  • Comprehensive documentation updates with new feature pages

What's Changed

New Contributors

Full Changelog: v0.8.0...v0.8.1

0.8.0

12 Dec 07:43

Choose a tag to compare

v0.8.0

New Features

Multi-Window Support (#61)

Work on multiple database sessions simultaneously with full multi-window support:

  • New Window: Cmd+Shift+N (macOS) / Ctrl+Shift+N (Windows/Linux)
  • Cascade Positioning: New windows open with a 30px offset for easy visibility
  • Connection Sync: Windows share the connection list but maintain independent tabs and editor state
  • Auto-Update Broadcast: Update notifications are sent to all open windows

Settings Popup (#61)

Quick access to settings from anywhere:

  • Keyboard Shortcut: Cmd+, (macOS) / Ctrl+, (Windows/Linux)
  • Settings accessible from the File menu on all platforms
  • Streamlined access to appearance, database, and licensing options

Configurable Query Timeout (#60)

Set global query timeouts to prevent runaway queries:

  • Navigate to Settings → Database to configure timeout (in seconds)
  • Works across all database types:
    • PostgreSQL: Uses SET statement_timeout
    • MySQL: Uses SET SESSION max_execution_time
    • MSSQL: Uses per-request timeout
  • Default: 0 (no timeout) to allow long-running queries
  • Input validation prevents injection attacks

Enhanced Command Palette (#59)

Migrated to the cmdk library for a significantly improved experience:

  • Nested Navigation: Browse through connections, saved queries, and appearance settings
  • Smart Fuzzy Search: Acronym and character-based matching for faster navigation
  • Pin/Unpin Saved Queries: Keep frequently used queries at the top
  • Quick Connection Switching: Auto-switch to newly added connections
  • Cmd+P opens directly to the connection list with add/edit options

Improvements

Windows Titlebar & Performance (#57)

  • Improved Windows custom titlebar appearance
  • Performance fix for resize operations on the main thread
  • Better overall responsiveness on Windows

What's Changed

New Contributors

Full Changelog: v0.7.0...v0.8.0