Skip to main content

LocalQL

CI PyPI Python License: MIT

LocalQL is a DuckDB-powered tool for querying local CSV files with SQL. Install the localql package to use the csvql command, organize repeatable work in a .csvql.yml project catalog, export results, and optionally work in a terminal menu.

LocalQL: Query local CSVs with SQL

Contents

Install and first query

Install the core command in your selected Python environment:

python -m pip install localql
csvql --version

To try a query, create a small CSV in the directory where you are working:

python -c "from pathlib import Path; Path('orders.csv').write_text('order_id,status\nORD-1,paid\nORD-2,pending\nORD-3,paid\n', encoding='utf-8')"
csvql query orders.csv "SELECT * FROM orders LIMIT 5"

The file name becomes the SQL table name, so orders.csv is available as orders. A successful command prints a table with the CSV rows. See Getting started for project catalogs, saved SQL, and exports.

Terminal screenshot of a LocalQL query over a CSV file

Optional terminal menu

The core CLI needs only localql. Install the optional Textual-based terminal menu when you want a source list, SQL editor, results, and history in one terminal application:

python -m pip install "localql[tui]"
csvql menu orders.csv

All core commands remain available without the extra. See the Terminal menu guide for keys and source-management actions.

Terminal screenshot of the LocalQL TUI workbench with sources, SQL, history, and results

Compatibility and safety

LocalQL supports Python 3.11 through 3.14 on macOS, Linux, and Windows.

LocalQL treats user-authored SQL as trusted local DuckDB SQL. It does not sandbox DuckDB or restrict filesystem access. Run only SQL you trust.

Core workflows

When you want to… Start here
Query a CSV or join named tables CLI reference
Reuse a project catalog and saved SQL Project catalogs
Inspect, sample, or profile a source Inspect, sample, and profile
Export a result or reuse it as a CSV source Save and reuse results
Check configured data-quality rules Data-quality checks

DuckDB executes SQL; LocalQL manages local CSV table aliases, project configuration, output, and explicit exports.

Get help and stay current

Metadata

Release files for localql 1.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for localql 1.0.5
File Size Uploaded Provenance Actions
localql-1.0.5.tar.gz 1.8 MB With provenance Details for localql-1.0.5.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for localql 1.0.5
File Interpreter ABI Platform Actions
localql-1.0.5-py3-none-any.whl Python 3 none any Details for localql-1.0.5-py3-none-any.whl

Total release size: 1.9 MB

Release files / localql-1.0.5.tar.gz

Download URL localql-1.0.5.tar.gz
Size 1.8 MB
Tags Source
SHA-256 checksum
How to use checksums
7821f1804d86097dc3810421ac6fb6e4c26511e5a2327d274abcabfcdab4718f
BLAKE2b-256 checksum
How to use checksums
c1c26d6109b9699bea7b6e13918f41b7ba3ee9a10b9d32b9c43fc81a7e45bc53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 22, 2026.

Transparency log

Release files / localql-1.0.5-py3-none-any.whl

Download URL localql-1.0.5-py3-none-any.whl
Size 97.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
40f6cb728d2d47fa4af04a9453fac6301922955d908390d24900fed3a58af26d
BLAKE2b-256 checksum
How to use checksums
e93187760263d145a8046b5962c03400223833d1dd2907838a434ccd3fee8f91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 22, 2026.

Transparency log

Security for localql 1.0.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for localql-1.0.5.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page