Calling Rust from Python

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • PyO3

    Rust bindings for the Python interpreter

  • I would not recommend FFI + ctypes. Maintaining the bindings is tedious and error-prone. Also, Rust FFI/unsafe can be tricky even for experienced Rust devs.

    Instead PyO3 [1] lets you "write a native Python module in Rust", and it works great. A much better choice IMO.

    [1] https://github.com/PyO3/pyo3

  • pysequoia

    OpenPGP in Python using Sequoia PGP

  • I'd also recommend PyO3 and Maturin. The amount of help these crates give is mind boggling (automatic type marshaling and even github CI jobs for creating cross platform precompiled wheels).

    I've created a library using this crate (https://github.com/wiktor-k/pysequoia/) and most of the time I could just focus on the problem domain instead of technical details of the bindings.

    There are just a couple of smaller issues (eg. Python to Rust async is not built in) but overall it's really nice.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Rust Bindings for the Python Interpreter

    1 project | news.ycombinator.com | 20 Feb 2024
  • Bytewax: Stream processing library built using Python and Rust

    2 projects | news.ycombinator.com | 25 Jul 2023
  • Documenting Native Python Extensions Made With Rust and PyO3

    2 projects | /r/rust | 19 Jun 2023
  • My first superoptimizer

    1 project | /r/programming | 31 May 2023
  • My PyO3 library dosent have auto completion

    1 project | /r/learnrust | 9 May 2023