Skip to main content

A SQLite database browser, editor and AI query builder using FreeSimpleGUI

Project description

FreeSimpleSQL

A modern, user-friendly SQL database browser and query tool powered by AI. FreeSimpleSQL simplifies database interactions with a clean interface, AI-assisted query generation, and powerful visualization features.

✨ Features

  • AI SQL Generator: Describe your query in plain English (e.g., "Show me messages grouped by type") and let the AI generate the SQL for you.
  • Intuitive Interface: Clean, dark-themed UI built with FreeSimpleGUI.
  • Smart Query History:
    • Automatically saves your queries and AI prompts.
    • Access previous queries from a dropdown list.
    • Persists history across sessions (up to 300 records).
  • Dynamic Data Table:
    • Automatically adjusts columns based on your query results.
    • Handles complex queries, aggregations, and joins.
    • Pagination support for large datasets.
    • Export to CSV: One-click copy of table data to clipboard.
  • Detailed Record View:
    • Select any row to view full details.
    • JSON View: Pretty-printed JSON view for complex data fields.
    • Plain Text View: Clean key-value pair display.
  • Keyboard Shortcuts: speed up your workflow with intuitive hotkeys.
    • Alt-P: Focus AI Prompt
    • Alt-G: Generate & Apply SQL
    • Alt-S: Execute Query
    • Alt-Q: Focus Query Editor
  • Database Management:
    • Import/Export SQLite databases via the File menu.
    • Theme selection support.

🚀 Getting Started

Prerequisites

  • Python 3.8+
  • uv package manager (recommended) or pip

Installation

  1. Clone the repository:

    git clone <repository_url>
    cd freesimplesql
    
  2. Install dependencies:

    uv sync
    # or
    pip install -r requirements.txt
    
  3. Run the application:

    uv run -m freesimplesql
    # or
    python -m freesimplesql
    

📖 Usage Guide

1. AI SQL Generation

  1. Press Alt-P to focus the AI Prompt box.
  2. Type your request (e.g., "Count total messages per source IP").
  3. Press Alt-G. The system will generate the SQL and automatically place it in the query editor.
  4. Press Alt-S to execute.

2. Manual Querying

  1. Press Alt-Q to focus the SQL editor.
  2. Type your SQL query (e.g., SELECT * FROM message WHERE sn > 100).
  3. Click Search or press Alt-S.

3. Using History

  • Select a previous query from the History dropdown above the query editor.
  • The editor will populate with the query AND the original AI prompt used to create it (if applicable).

4. Configuration

  • AI Settings: Go to AI -> LLM Settings to configure your API key and preferred model.
  • Themes: Change the visual style via the Theme menu.

🛠️ Technology Stack

📝 License

This project is open-source and available under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

freesimplesql-0.3.0.tar.gz (121.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

freesimplesql-0.3.0-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file freesimplesql-0.3.0.tar.gz.

File metadata

  • Download URL: freesimplesql-0.3.0.tar.gz
  • Upload date:
  • Size: 121.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.25

File hashes

Hashes for freesimplesql-0.3.0.tar.gz
Algorithm Hash digest
SHA256 36aecebf439b6a758ab32a1c64484cf221d7d0168d2c7ce10153879914289532
MD5 6aeb29b903d3dda4c845fc20cbbf9ec8
BLAKE2b-256 97983b88d013f9e191d0859198889c9b76b340cfdf32c476f924bff11a07bd15

See more details on using hashes here.

File details

Details for the file freesimplesql-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for freesimplesql-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8ff02e93d9099f57d8d61a130055f95ba99e7f092044a18c1841d283382fd8af
MD5 8ff6e3e40eafd33967435e68201f005b
BLAKE2b-256 17e45dfbeefce12528fdf29bef4a111684c5fd29bcac4bcd4392987bb7abf124

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page