awesome-python-rs
A curated list of Python tools, libraries, and frameworks built with Rust.
https://github.com/ritwiktiwari/awesome-python-rs
Last synced: 5 days ago
JSON representation
-
Arrow & Columnar Data
- arro3 - A minimal Python library for Apache Arrow, binding to the Rust Arrow crate.
-
Bioinformatics & Astronomy
- bed-reader - Read and write the PLINK BED format, simply and efficiently.
- haem - A Python library for working on bioinformatics problems.
- mocpy - Astronomical Python library for describing coverage regions on the unit sphere.
- satkit - Satellite and orbital mechanics toolkit for astrodynamics calculations including orbit propagation and coordinate transformations.
-
Cloud Storage
-
Cryptography & Hashing
- cryptography - The standard Python cryptographic library, with performance-critical parts in Rust.
- blake3-py - Python bindings for the BLAKE3 cryptographic hash function.
- johnnycanencrypt - OpenPGP library with Yubikey support.
-
Data Processing & DataFrames
- polars - DataFrame library with lazy evaluation and parallel execution.
- datafusion-python - Python bindings for Apache DataFusion, an in-memory query engine.
- delta-rs - Native Rust library for Delta Lake with Python bindings (`deltalake` on PyPI).
- connector-x - Fastest library to load data from databases into DataFrames.
- pathway - Performant Python ETL framework with a Rust runtime.
- hudi-rs - Native Rust implementation for Apache Hudi with Python bindings.
- sail - Unifying stream, batch, and AI workloads with Apache Spark compatibility.
-
Data Structures
-
Date & Time
-
File Watching & System Utilities
- watchfiles - Simple, modern, fast file watching and code reload, powered by Rust's `notify` crate.
- cramjam - Thin Python bindings to de/compression algorithms (snappy, brotli, lz4, zstd, etc.).
-
Finance
- finalytics - Investment analysis library.
- rateslib - A fixed income library for Python using Rust extensions.
-
Footnotes
-
Articles
- Making Python 100x faster with less than 100 lines of Rust - Performance optimization guide.
- Why Rust is the Future of Python Tooling - Analysis of the Rust-Python ecosystem.
-
Communities
- PyO3 Discord - Official PyO3 community.
- r/Python - Python community.
-
Learning Resources
- PyO3 User Guide - Official guide for writing Python extensions in Rust.
- maturin User Guide - Build and publish Rust Python packages.
- Writing Python Extensions in Rust - InfoWorld tutorial.
-
-
Geospatial
-
Graph Libraries
- rustworkx - A high-performance Python graph library (originally created for Qiskit).
-
HTTP Clients
-
Linting, Formatting & Type Checking
- ruff - An extremely fast Python linter and code formatter.
- ty - An extremely fast Python type checker and language server by Astral.
- zuban - A high-performance Python language server and type checker with PyRight-like and Mypy-compatible modes.
- pylyzer - A fast static type checker and language server for Python, over 100x faster than Pyright.
- pyrefly - A fast Python type checker and language server from Meta.
- rumdl - A high-performance Markdown linter and formatter written in Rust.
-
Miscellaneous
-
Package Management & Tooling
- maturin - Build and publish Rust-based Python packages with pyo3, cffi, and uniffi bindings.
- pixi - A fast conda/pip package manager.
- prek - A fast Rust-based reimplementation of the pre-commit framework for managing Git hooks.
- uv - An extremely fast Python package and project manager. 10-100x faster than pip, replaces pip-tools, poetry, pyenv, pipx, and virtualenv in a single tool.
-
Profiling
- filprofiler - Memory profiler for Python that identifies peak memory usage and allocation sources in data processing applications.
-
Rust-Python Interop
- PyO3 - Rust bindings for the Python interpreter. The foundation for most projects on this list.
- setuptools-rust - Setuptools plugin for Rust extensions.
- RustPython - A Python 3 interpreter written entirely in Rust.
-
Scientific Computing
- river - Online machine learning in Python; computationally heavy algorithms in Rust.
- forust - A lightweight gradient boosted decision tree library.
- radiate - A high-performance evolution engine for genetic programming and evolutionary algorithms.
- cellular_raza - A cellular agent-based simulation framework.
- feos - Lightning fast thermodynamic modeling with a fully developed Python interface.
-
Search & Indexing
- ahocorasick_rs - Fast multi-pattern string search using the Aho-Corasick algorithm, 1.5-7x faster than alternatives.
- tantivy-py - Python bindings for Tantivy, a full-text search engine library (Lucene alternative).
- ruosh - A pythonic full-text search library with a Whoosh-like API, but the search engine underneath is Tantivy.
-
Serialization & Parsing
- orjson - Fast, correct JSON library supporting dataclasses, datetimes, and numpy.
- jiter - Fast iterable JSON parser, used by pydantic and the OpenAI Python SDK.
- lp_parser_rs - Parser for Linear Programming files supporting IBM CPLEX, FICO Xpress, Gurobi, and Mosek formats.
- ormsgpack - Fast MessagePack serialization/deserialization, derived from orjson.
-
Sorting
- natsort-rs - Fast natural sorting library, 5-45x faster than alternatives.
-
Tokenization & ML
- tokenizers - Hugging Face's fast tokenizer library with Python bindings.
- tiktoken - A fast BPE tokenizer for use with OpenAI's models.
- safetensors - A safe and fast format for storing and loading tensors.
-
Validation & Data Modeling
- pydantic-core - Core validation logic for pydantic, written in Rust.
- jsonschema-rs - A high-performance JSON Schema validator.
-
Visualization
- rerun - Visualize streams of multimodal data. Built in Rust with a Python SDK.
-
Web Frameworks & Servers
-
Web Scraping & HTML
- css-inline - CSS inlining implemented in Rust, for fast HTML email preparation.
- selectolax - Fast HTML5 parser with CSS selectors, using Rust's html5ever engine.
- html2text-rs - Python library for converting HTML to markup or plain text.
- html-py-ever - Fast HTML parsing and CSS selecting via html5ever.
- markupever - High-performance HTML and XML parser with CSS selector support built on Rust's html5ever engine.
Programming Languages
Categories
Data Processing & DataFrames
7
Footnotes
7
Linting, Formatting & Type Checking
6
Web Scraping & HTML
5
Scientific Computing
5
Package Management & Tooling
4
Bioinformatics & Astronomy
4
Serialization & Parsing
4
Search & Indexing
3
Data Structures
3
Cryptography & Hashing
3
Geospatial
3
Tokenization & ML
3
Rust-Python Interop
3
Miscellaneous
3
HTTP Clients
3
Date & Time
2
Cloud Storage
2
Validation & Data Modeling
2
File Watching & System Utilities
2
Finance
2
Web Frameworks & Servers
2
Sorting
1
Visualization
1
Arrow & Columnar Data
1
Profiling
1
Graph Libraries
1
Sub Categories
Keywords
python
41
rust
37
pyo3
7
web-scraping
4
datetime
3
parser
3
python3
3
machine-learning
3
static-analysis
3
http
3
pydantic
3
ja4
2
s3
2
sql
2
ja3
2
cpython
2
cpp
2
tls
2
tls-client
2
numpy
2
json
2
wasm
2
dataclasses
2
pypy
2
packaging
2
linter
2
artificial-intelligence
2
mypy
2
akamai
2
asyncio
2
timezones
2
fingerprint
2
streaming
2
markdown
2
stream-processing
2
http-client
2
arrow
2
dataframe
2
https
2
multimodal
1
computer-vision
1
robotics
1
visualization
1
rust-lang
1
python-virtual-environment
1
package-manager-tool
1
package-manager
1
package-management
1
conda-packages
1
conda-environment
1