{"repo":"ybrs/riffq","free":true,"listed":false,"github":"https://github.com/ybrs/riffq","clone":"git clone https://github.com/ybrs/riffq.git","description":"Connect to your data in python with postgresql protocol (pandas, polars, duckdb etc)","language":"Python","stars":65,"topics":["duckdb","pgwire","pgwire-protocol","postgresql"],"license":"Apache-2.0","category":"databases-storage","readme_excerpt":"riffq riffq is a toolkit in python (built in Rust) for building PostgreSQL wire-compatible databases. It allows you to serve data from Python over the PostgreSQL protocol — turning your Python-based logic or in-memory data into a queryable, network-exposed system. We also have a catalog emulation system in rust with datafusion. Documentation: https://ybrs.github.io/riffq/ --- What It Does - Implements the PostgreSQL wire protocol in Rust for performance and concurrency - Sends raw SQL queries (Simple or Extended protocol) to Python for interpretation - Implements postgres catalog compatibility layer, see pg catalog rs Since you are in python, you can - Allows you to connect to remote data sources (e.g., analytics DB, CRM) and expose them as a unified PostgreSQL database - Enables serving Pandas DataFrames over the network as virtual SQL tables - Can delegate SQL execution to DuckDB, Polars, or any other Python engine - Acts as a programmable federated query engine or custom data service --- Example Use Cases - Serve a Pandas DataFrame as a PostgreSQL table to BI tools - Build a custom federated engine from multiple APIs or databases - Implement your own data lake query frontend - Expose dynamic ML feature stores for training or real-time inference - Provide fine-grained, code-controlled access to internal metrics or logs --- Example The Rust side calls this Python handler when a SQL query comes in via the PostgreSQL protocol. --- Architecture - Rust layer handles: - PostgreSQ","default_branch":null,"files":null,"tree":[],"storefront":"/r/ybrs","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/ybrs/riffq/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}