Project structure and paths (lib, crates, ...)

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • PyO3

    Rust bindings for the Python interpreter

  • A workspace may consists of a primary package and supporting packages. The most common case, where you need this, is when you want to use procedual macros (as they must have there own library crate). Here the main package lives in the root folder of the project and the supporting packages get subfolders in the root folder. An example for this structure is shown here: https://github.com/PyO3/pyo3 .

  • serde

    Serialization framework for Rust

  • A workspace may also consists of multiple equally important packages. Here the workspace root contains an extra Cargo.toml file only specifying the workspace content and packages are contained in subfolders. An example for this structure is shown here: https://github.com/serde-rs/serde/blob/master/Cargo.toml

  • 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
  • rust-analyzer

    Discontinued A Rust compiler front-end for IDEs [Moved to: https://github.com/rust-lang/rust-analyzer] (by rust-analyzer)

  • For very large projects the structure can get more complicated with packages sorted into multiple subfolders, e.g.: https://github.com/rust-analyzer/rust-analyzer

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