Browse free open source Rust Libraries and projects below. Use the toggles on the left to filter open source Rust Libraries by OS, license, language, programming language, and project status.

  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Get Started Free
  • Cut Data Warehouse Costs by 54% Icon
    Cut Data Warehouse Costs by 54%

    Easily migrate from Snowflake, Redshift, or Databricks with free tools.

    BigQuery delivers 54% lower TCO with exabyte scale and flexible pricing. Free migration tools handle the SQL translation automatically.
    Try Free
  • 1
    RustDesk Server Program

    RustDesk Server Program

    Self-host your own RustDesk server

    rustdesk-server is the self-hosted backend for RustDesk, an open-source remote desktop solution. It provides the rendezvous and relay components that allow RustDesk clients to discover peers and traverse NATs securely, enabling direct or relayed connections when needed. By running your own server, you retain control over connection metadata and can operate entirely within your organization’s perimeter. The project targets simplicity of deployment while maintaining performance characteristics suitable for interactive screen sharing and file transfer. It supports common operational needs such as configuring ports, authentication modes, and relay behavior to match diverse network constraints. Together with RustDesk clients, it offers a fully open alternative to proprietary remote-access ecosystems with an emphasis on privacy and self-custody.
    Downloads: 27 This Week
    Last Update:
    See Project
  • 2
    pdf-inspector

    pdf-inspector

    Fast Rust library for PDF inspection, classification

    pdf-inspector is a fast Rust library for classifying PDFs and extracting structured text without OCR. It distinguishes text-based, scanned, image-based, and mixed documents while returning confidence scores and pages that may need OCR. Its position-aware parser preserves font data, coordinates, reading order, and multi-column layouts. The converter produces clean Markdown with headings, lists, code blocks, links, page breaks, and formatted tables. It supports CID fonts, several encodings, right-to-left text, and automatic detection of broken font mappings. The same core is available through Rust, Python, Node.js, browser WebAssembly, and command-line interfaces. It is designed for local document pipelines that need fast routing before using slower OCR services.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 3
    Rust Programming Language

    Rust Programming Language

    Empowering everyone to build reliable and efficient software

    The Rust Programming Language is a language that empowers you to build reliable and efficient software. It runs blazingly fast and is memory-efficient, so it can power performance-critical services and run on embedded devices. It has a rich type system and ownership model, ensuring both thread and memory safety. Consisting of a standard library, great documentation and a friendly compiler, plus a top-notch build tool, package manager, auto-formatter and many other great tools, it’s the language of choice for increased productivity. Hundreds of companies the world over are using Rust to power an amazing range of cross-platform solutions. See what a great fit Rust can be for your own projects!
    Downloads: 9 This Week
    Last Update:
    See Project
  • 4
    Russh

    Russh

    Rust SSH client & server library

    Russh provides a Rust library for implementing SSH clients and servers with a modern, async-friendly design. It exposes building blocks for authentication, channel management, port forwarding, and key handling, allowing you to embed SSH functionality directly into Rust applications. The API is designed to be explicit and composable, making it possible to implement custom behaviors like reverse tunnels, interactive shells, and service multiplexing. Because performance and safety are central, the code leverages Rust’s type system to reduce classes of runtime errors common in network protocol implementations. The project also includes examples and discussion threads that show how other tools integrate it for web-based clients or gateway services. For teams building terminals, proxies, or embedded management planes, it offers a robust foundation without shelling out to external binaries.
    Downloads: 6 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 5
    Mini Jinja

    Mini Jinja

    MiniJinja is a powerful but minimal dependency template engine

    MiniJinja is a minimal-dependency template engine based on the syntax and behavior of Python’s Jinja2. It is implemented primarily for Rust and also has Go, JavaScript, Python, C, and CLI-related components. The project supports Jinja-style templates, inheritance, filters, expressions, dynamic objects, and serde-compatible data. It is designed to stay close to Jinja2 while keeping compile times, dependencies, and API surface manageable for Rust programs. MiniJinja can also be used as a small expression language or embedded template layer in larger applications. It is useful for configuration generation, HTML rendering, LLM chat templating, data workflows, and command-line templating.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 6
    CXX

    CXX

    Safe interop between Rust and C++

    CXX is a library that offers safe interop between Rust and C++. It provides a safe mechanism for calling C++ code from Rust and vice versa, one that is protected from the many possible things that can go wrong when bindgen or cbindgen is used to generate unsafe C-style bindings. The general idea of CXX is to define the signatures of both sides of the FFI boundary embedded together in one Rust module. CXX gets a complete picture from this of the boundary, and through it is able to perform static analyses against the types and function signatures, ensuring that both Rust's and C++'s invariants and requirements are upheld. CXX then emits the relevant extern "C" signatures on both sides through a pair of code generators. This is done together with any necessary static assertions needed for later in the build process to verify correctness. The result is an FFI bridge that operates at zero or negligible overhead, with no copying, serialization or memory allocation needed.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 7
    Mundane

    Mundane

    Mundane is a Rust cryptography library backed by BoringSSL

    Mundane is a Rust cryptography library designed to be safe, ergonomic, and high-performance, with its cryptographic operations powered by BoringSSL. It aims to eliminate common security pitfalls by providing APIs that are intentionally difficult to misuse, prioritizing safety and correctness over flexibility. The library vendors its own copy of BoringSSL, ensuring consistent builds without external dependencies and avoiding symbol conflicts between different versions. Mundane emphasizes clarity in its cryptographic abstractions, making it accessible to developers while maintaining robust security guarantees. It is ideal for projects that need reliable, production-grade cryptography built directly on top of proven, well-tested C libraries.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 8
    Termimad

    Termimad

    A library to display rich (Markdown) snippets and texts

    Termimad is a Rust library for displaying styled Markdown-inspired content inside command-line and terminal user interfaces. It separates textual structure and data from visual skins so applications can customize presentation cleanly. Supported formatting includes headings, emphasis, code, lists, quotes, tables, horizontal rules, and multiline text. The library handles wrapping, scrolling, table balancing, Unicode, and wide terminal characters. Developers can create reusable skins controlling colors and other terminal styling properties. Safe templates insert dynamic values without accidentally interpreting them as Markdown syntax. Termimad uses Crossterm for terminal behavior and emphasizes precise control without imposing a complete TUI framework.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 9
    redis-rs

    redis-rs

    Redis library for rust

    Redis-rs is a Rust library for interacting with Redis databases, offering high-performance data manipulation capabilities for Rust developers.
    Downloads: 2 This Week
    Last Update:
    See Project
  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 10
    Ansible Examples

    Ansible Examples

    A few starter examples of ansible playbooks, to show features

    This repository collects practical, real-world examples of using Ansible to automate infrastructure, deployments, and configurations. Each directory demonstrates a specific use case—ranging from setting up web servers, load balancers, and databases to orchestrating multi-tier applications in cloud environments. The examples highlight common Ansible practices such as organizing inventories, writing reusable playbooks, using roles, and handling variables and templates. They’re designed to be adapted directly into your own infrastructure or to serve as reference blueprints when learning how to structure automation projects. Whether you’re managing a handful of servers or deploying at scale, this repo provides starting points that illustrate how Ansible can streamline repetitive operational tasks.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 11
    Iced

    Iced

    A cross-platform GUI library for Rust, inspired by Elm

    Iced is a cross-platform, end-user-oriented GUI library for Rust, inspired by The Elm Architecture. It expects you to split user interfaces into four different concepts, which are: the state of your app; messages, which are user interactions or other meaningful events; view logic, which displays your state as widgets that can result in messages; and update logic, which offers a way to update your state and react to messages. Iced is very simple and easy to use, and is type-safe. It offers many great features including built-in widgets and custom widget support, debug overlay, a modular ecosystem and more.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 12
    Mako

    Mako

    An extremely fast, production-grade web bundler based on Rust

    Mako is a new web bundler for web apps, libraries, and frameworks. It's designed to be fast, reliable, and easy to use. It has been used in hundreds of projects in production by Ant Group, and other companies. If you are looking for a modern web bundler, Mako is the right choice.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 13
    Peroxide

    Peroxide

    Rust numeric library with high performance and friendly syntax

    Rust numeric library contains linear algebra, numerical analysis, statistics and machine learning tools with R, MATLAB, Python-like macros. Peroxide uses a 1D data structure to represent matrices, making it straightforward to integrate with BLAS (Basic Linear Algebra Subprograms). This means that Peroxide can guarantee excellent performance for linear algebraic computations by leveraging the optimized routines provided by BLAS. For users familiar with numerical computing libraries like NumPy, MATLAB, or R, Rust's syntax might seem unfamiliar at first. This can make it more challenging to learn and use Rust libraries that heavily rely on Rust's unique features and syntax.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 14
    Polars

    Polars

    Dataframes powered by a multithreaded, vectorized query engine

    Polars is a high-performance, multi-language DataFrame library built in Rust using Apache Arrow. It delivers blazing-fast, vectorized, and parallel data manipulation with both eager and lazy execution, making it an excellent tool for data processing in Python, Rust, Node.js, R, and SQL contexts.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    Ruma

    Ruma

    A set of Rust crates for interacting with the Matrix chat network

    Matrix is an open specification for an online communication protocol. It includes all the features you'd expect from a modern chat platform including instant messaging, group chats, audio and video calls, searchable message history, synchronization across all your devices, and end-to-end encryption. Matrix is federated, so no single company controls the system or your data. You can use an existing server you trust or run your own, and the servers synchronize messages seamlessly. Learn more in the Introduction to Matrix. Rust is a systems programming language from Mozilla built with safety, concurrency, and performance in mind. Its novel approach to memory safety and its rich type system make it an excellent choice for writing fast, secure, and reliable programs.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    Rust

    Rust

    Rust tools, libraries

    nikivdev/rust is a personal workspace containing Rust tools, libraries, experiments, and command-line utilities. It is not a single product with one narrow feature set, but a collection of reusable Rust code organized around the author’s development workflow. The repository is designed to work with the author’s Flow task runner, which provides setup, task discovery, and deployment commands. Some utilities can be compiled and installed into the user’s local path through project-specific deploy commands. The project is useful as a reference for how a developer organizes practical Rust tooling across many small programs. Its main value is as a living toolkit for experimentation, automation, and personal productivity in the Rust ecosystem.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    SpaceWasm

    SpaceWasm

    A flight-compliant WebAssembly interpreter

    SpaceWasm is a NASA JPL WebAssembly interpreter designed for resource-constrained spacecraft systems. It implements a constrained form of the WebAssembly 1.0 specification for executing portable onboard programs. A streaming decoder reads modules in chunks, validates them in one pass, and converts instructions into an interpretation-focused intermediate representation. Its custom memory model uses fixed-size pages to provide deterministic allocation behavior and avoid panic on allocation failure. Embedders can expose controlled host functions while restricting program access, compute time, and system interactions. The project emphasizes sandboxing, portability, predictable resource use, and compatibility with flight-software requirements. Tests, fuzzing, benchmarks, requirements, and integration components are included in the Rust codebase.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    Substrate Node Template

    Substrate Node Template

    A rust implementation of the Quip Protocol forked from Substrate

    Substrate Node Template is a Rust-based implementation of the Quip Protocol built on top of the Substrate blockchain framework, providing a customizable foundation for building decentralized networks. The project is structured as a blockchain node template, including components such as runtime logic, networking, consensus mechanisms, and RPC interfaces. It leverages FRAME, Substrate’s modular runtime development system, allowing developers to compose blockchain functionality through reusable pallets. The node supports development and testing environments with configurable genesis states and pre-funded accounts, making it suitable for experimentation and rapid prototyping. It also includes tools for running single-node or multi-node networks, enabling developers to simulate distributed consensus systems locally. The architecture is designed for extensibility, allowing custom consensus algorithms, storage models, and transaction logic to be integrated.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    mdBook

    mdBook

    Create books from markdown files

    mdBook is a command line tool and Rust crate to create books with Markdown. The output resembles tools like Gitbook, and is ideal for creating product or API documentation, tutorials, course materials or anything that requires a clean, easily navigable and customizable presentation. mdBook is written in Rust; its performance and simplicity made it ideal for use as a tool to publish directly to hosted websites such as GitHub Pages via automation. This guide, in fact, serves as both the mdBook documentation and a fine example of what mdBook produces. mdBook includes built in support for both preprocessing your Markdown and alternative renderers for producing formats other than HTML. These facilities also enable other functionality such as validation. Searching Rust's crates.io is a great way to discover more extensions.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    winit

    winit

    Window handling library in pure Rust

    Cross-platform window creation and management in Rust. Winit is a window creation and management library. It can create windows and lets you handle events (for example the window being resized, a key being pressed, a mouse movement, etc.) produced by the window. Winit is designed to be a low-level brick in a hierarchy of libraries. Consequently, in order to show something on the window you need to use the platform-specific getters provided by winit, or another library.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    Anyhow

    Anyhow

    Flexible concrete Error type built on std::error::Error

    This is a Rust library (crate) that provides a flexible, concrete error type built atop the standard std::error::Error trait. Its primary goal is to make error handling in applications easy: instead of defining lots of custom error types, you can use anyhow::Error (or the alias anyhow::Result<T>) for fallible functions. The crate supports attaching context to errors, so you can convert a low-level error (like “file not found”) into one with richer diagnostics (“Failed to read instructions from path X”) using .context() or .with_context(). It supports downcasting (so you can inspect the underlying error type), and for recent versions of Rust, it will capture backtraces by default when the underlying error type doesn’t already. It also supports no_std mode (in limited form) by disabling default features. The README distinguishes it from library-oriented error crates (like thiserror): use anyhow when you just care about application-level error handling, not fine-grained types.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    Chumsky

    Chumsky

    Write expressive, high-performance parsers with ease.

    Chumsky is a parser library for Rust that focuses on expressiveness and performance. It provides developers with tools to write high-performance parsers using combinators, suitable for a wide range of parsing tasks.​
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    DCV Color Primitives

    DCV Color Primitives

    DCV Color Primitives Library

    DCV Color Primitives is a library to perform image color model conversion. Aware of the underlying hardware and supplemental cpu extension sets (up to avx2). Support data coming from a single buffer or coming from multiple image planes. Support non-tightly packed data. Support images greater than 4GB (64 bit). Convert an image from bgra to nv12 (single plane) format containing yuv in BT601. You might want to propagate errors to the caller function or mix with some other error types. So far, buffers were sized taking into account the image pixel format and dimensions; However, you can use a function to compute how many bytes are needed to store an image of a given format and size. If your data is scattered in multiple buffers that are not necessarily contiguous, you can provide image planes. To take into account data which is not tightly packed, you can provide image strides.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    Diom

    Diom

    Components platform for robust services

    Diom is a backend components platform for building reliable, idiomatic services without repeatedly reimplementing common infrastructure pieces. It provides high-level APIs for service components such as caching, rate limiting, idempotency, queues, and other backend primitives. The project is designed to reduce boilerplate while keeping services robust, predictable, and production-friendly. It runs with zero runtime dependencies and uses its own storage, which makes deployment simpler than stitching together multiple external systems. Diom can operate as a single node or as a highly available cluster, depending on the service requirements. It is useful for backend developers who want reusable infrastructure components with clean APIs and fewer operational moving parts.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    Floem

    Floem

    A native Rust UI library with fine-grained reactivity

    Floem is a cross-platform GUI framework for Rust. It aims to be extremely performant while providing world-class developer ergonomics. Supporting both GPU and CPU rendering, Floem gives you performance that's closest to bare metal. Also primitives are provided to help the developer to write performant UI code without too much effect.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • Next