Are there any big projects written in Rust without any use of unsafe code?

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
  • min-sized-rust

    🦀 How to minimize Rust binary size 📦

  • It did in 2017 when the article was written. Though this changed in 2018 when Rust started using the system allocator by default. The size of the executables are still larger than equivalent programs in C, but there are are various ways to reduce the size when it matters.

  • bonsaidb

    A developer-friendly document database that grows with you, written in Rust

  • I maintain several large codebases that have #![forbid(unsafe)] annotations, which prevent unsafe code from being written in those codebases directly. BonsaiDb clocks in at just shy of 30k LOC, and depends on Nebari which is another 12k LOC. Those two crates make up the bulk of a networked database implementation.

  • 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
  • nebari

    A pure Rust database implementation using an append-only B-Tree file format.

  • I maintain several large codebases that have #![forbid(unsafe)] annotations, which prevent unsafe code from being written in those codebases directly. BonsaiDb clocks in at just shy of 30k LOC, and depends on Nebari which is another 12k LOC. Those two crates make up the bulk of a networked database implementation.

  • unsafe-code-guidelines

    Forum for discussion about what unsafe code can and can't do

  • As for resources I am aware of, I'd recommend the chapters in the Rust book on unsafe code, as well as the Unsafe Code Guidelines.

  • diem

    Diem’s mission is to build a trusted and innovative financial network that empowers people and businesses around the world.

  • I believe diem has over 250kLOC and no unsafe code

  • rust

    Empowering everyone to build reliable and efficient software.

  • If you want to see how large a binary is without all the backtrace-printing code, there is a hardly-discussed feature, panic_mmediate_abort. On Linux, you could run cargo +nightly build -Zbuild-std=std,panic_abort -Z build-std-features=panic_immediate_abort --release --target=x86_64-unknown-linux-gnu, as mentioned in the link.

  • Voila

    Discontinued Voila is a domain-specific language launched through CLI tool for operating with files and directories in massive amounts in a fast & reliable way. (by Alonely0)

  • Voila. It is a domain-specific-language for interacting with large collections of files.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • abstreet

    Transportation planning and traffic simulation software for creating cities friendlier to walking, biking, and public transit

  • A/B Street, which comprises a UI library, lots of data import pipelines, and traffic simulation. 100k LoC, the only unafe is to make system calls through glow

  • glow

    GL on Whatever: a set of bindings to run GL anywhere and avoid target-specific code (by grovesNL)

  • A/B Street, which comprises a UI library, lots of data import pipelines, and traffic simulation. 100k LoC, the only unafe is to make system calls through glow

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