{"categories":[{"label":"Database","url":"https://skillfed.io/packages/category/database/2"}],"enrichment":{"capability":"Shillelagh lets you query APIs, files, spreadsheets, and in-memory objects using SQL, with support for multiple data sources through pluggable adapters and both programmatic and CLI interfaces.","skillfed_tags":["sql-adapter","multi-source-query","api-querying"],"use_cases":["Query a Google Sheet directly with SQL without exporting to a database or writing custom parsing code.","Combine data from multiple APIs and files in a single SQL query without writing ETL glue code.","Use SQL to filter and aggregate data from REST APIs that don't natively support SQL.","Prototype data analysis workflows using SQL before migrating to a full database.","Build a CLI tool that lets non-technical users query APIs and files using familiar SQL syntax.","Insert or update data in remote spreadsheets and files using SQL INSERT/UPDATE/DELETE statements."],"what_it_does":"Shillelagh is a Python library and CLI that bridges SQL and non-SQL data sources by implementing the Python DB API 2.0 on top of SQLite (via APSW). It lets you write SQL queries against APIs, files, spreadsheets, and in-memory objects as if they were database tables, with support for SELECT, INSERT, UPDATE, and DELETE operations. The library includes adapters for Google Sheets, CSV files, JSON and XML APIs, GitHub, S3, Pandas DataFrames, and several other sources, and you can write custom adapters to add support for new data sources.\n\nYou can use Shillelagh three ways: as a Python library with the APSW backend, as a SQLAlchemy dialect for integration with ORMs and query builders, or via a command-line REPL. Queries can combine data from multiple adapters in a single statement\u2014for example, reading timestamps from a Google Sheet and using them to filter weather API results, then writing the output to a CSV file. The library is designed to be both user-friendly for simple queries and extensible for developers adding new adapters.","worth_installing":"Yes. Shillelagh is actively maintained, has no known vulnerabilities, installs with low friction, and solves a genuine problem: querying diverse data sources with SQL without building custom adapters. It's production-stable (Development Status 5), supports modern Python versions (3.9\u20133.13), and has a permissive MIT license. Install it if you need SQL access to APIs, spreadsheets, or files; skip it if you're working exclusively with traditional SQL databases."},"id":"shillelagh","links":{"html":"https://skillfed.io/packages/shillelagh","md":"https://skillfed.io/packages/shillelagh.md","pypi":"https://pypi.org/project/shillelagh/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-07-30","license_spdx":null,"license_treatment":"permissive","name":"shillelagh","python_support":"supports_current","summary":"Making it easy to query APIs via SQL"},"popularity":{"monthly_downloads":1054421,"position":4436,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"1.4.5"}
