Taxonomy
Explore Categories
Browse Rust crates organized by category
Command line utilities
Applications to run at the command line.
19.4K cratesDevelopment tools
Crates that provide developer-facing features such as testing, debugging, linting, performance profiling, autocompletion, formatting, and more.
11.8K cratesNo standard library
Crates that are able to function without the Rust standard library.
9.8K cratesAPI bindings
Idiomatic wrappers of specific APIs for convenient access from Rust. Includes HTTP API wrappers as well. Non-idiomatic or unsafe bindings can be found in External FFI bindings.
9.1K cratesNetwork programming
Crates dealing with higher-level network protocols such as FTP, HTTP, or SSH, or lower-level network protocols such as TCP or UDP.
8.7K cratesData structures
Rust implementations of particular ways of organizing data suited for specific purposes.
7.6K cratesAsynchronous
Crates to help you deal with events independently of the main program flow, using techniques like futures, promises, waiting, or eventing.
6.9K cratesWeb programming
Crates to create applications for the web.
6.6K cratesScience
Crates related to solving problems involving physics, chemistry, biology, geoscience, and other scientific fields.
6.3K cratesAlgorithms
Rust implementations of core algorithms such as hashing, sorting, searching, and more.
5.5K cratesEmbedded development
Crates that are primarily useful on embedded devices or without an operating system.
5.1K cratesCryptography
Algorithms intended for securing data.
5.0K cratesEncoding
Encoding and/or decoding data from one data format to another.
4.7K cratesParsing tools
Crates to help create parsers of binary and text formats. Format-specific parsers belong in other, more specific categories.
4.5K cratesParser implementations
Parsers implemented for particular formats or languages.
3.7K cratesText processing
Crates to deal with the complexities of human language when expressed in textual form.
3.5K cratesRust patterns
Shared solutions for particular situations specific to programming in Rust.
3.4K cratesDatabase interfaces
Crates to interface with database management systems.
3.4K cratesHardware support
Crates to interface with specific CPU or other hardware features.
3.3K cratesWebAssembly
Crates for use when targeting WebAssembly, or for manipulating WebAssembly.
3.2K cratesMathematics
Crates with a mathematical aspect.
3.2K cratesGame development
For crates that focus on some individual part of accelerating the development of games.
2.8K cratesGUI
Crates to help you create a graphical user interface.
2.8K cratesConcurrency
Crates for implementing concurrent and parallel computation.
2.7K cratesFilesystem
Crates for dealing with files and filesystems.
2.6K cratesCommand-line interface
Crates to help create command line interfaces, such as argument parsers, line-editing, or output coloring and formatting.
2.5K cratesGraphics
Crates for graphics libraries and applications, including raster and vector graphics primitives such as geometry, curves, and color.
2.2K cratesCryptography::Cryptocurrencies
Crates for digital currencies, wallets, and distributed ledgers.
2.1K cratesExternal FFI bindings
Direct Rust FFI bindings to libraries written in other languages; often denoted by a -sys suffix. Safe and idiomatic wrappers are in the API bindings category.
1.9K cratesConfiguration
Crates to facilitate configuration management for applications.
1.7K cratesDevelopment tools::Testing
Crates to help you verify the correctness of your code.
1.6K cratesWeb programming::HTTP server
Crates to serve data over HTTP.
1.5K cratesAuthentication
Crates to help with the process of confirming identities.
1.5K cratesCompilers
Compiler implementations, including interpreters and transpilers.
1.5K cratesSimulation
Crates used to model or construct models for some activity, e.g. to. simulate a networking protocol.
1.4K cratesDevelopment tools::Debugging
Crates to help you figure out what is going on with your code such as logging, tracing, or assertions.
1.4K cratesOperating systems
Bindings to operating system-specific APIs.
1.3K cratesMultimedia::Audio
Crates that record, output, or process audio.
1.3K cratesMultimedia
Crates that provide audio, video, and image processing or rendering engines.
1.3K cratesWeb programming::HTTP client
Crates to make HTTP network requests.
1.2K cratesMemory management
Crates to help with allocation, memory mapping, garbage collection, reference counting, or interfaces to foreign memory managers.
1.2K cratesNo standard library::No dynamic allocation
Crates that are able to function without the Rust alloc crate.
1.1K cratesRendering
Real-time or offline rendering of 2D or 3D graphics, usually with the help of a graphics card.
1.1K cratesGames
Applications for fun and entertainment. If Rust the video game were implemented in Rust the programming language, it would belong in this category. Libraries to help create video games are in the Game engines category.
1.1K cratesVisualization
Ways to view data, such as plotting or graphing.
1.1K cratesMultimedia::Images
Crates that process or build images.
1.0K cratesGame engines
For crates that try to provide a "one-stop-shop" for all of your game development needs.
995 cratesCompression
Algorithms for making data smaller.
963 cratesDevelopment tools::Build Utils
Utilities for build scripts and other build time steps.
917 cratesDatabase implementations
Databases allow clients to store and query large amounts of data in an efficient manner. This category is for database management systems implemented in Rust.
900 cratesFinance
Crates for dealing with money. Accounting, trading, investments, taxes, banking and payment processing using government-backed currencies.
886 cratesDevelopment tools::Procedural macro helpers
Crates to help you write procedural macros in Rust.
850 cratesText editors
Applications for editing text.
794 cratesDevelopment tools::FFI
Crates to help you better interface with other languages. This includes binding generators and helpful language constructs.
785 cratesCaching
Crates to store the results of previous computations in order to reuse the results.
748 cratesDevelopment tools::Profiling
Crates to help you figure out the performance of your code.
683 cratesTemplate engine
Crates designed to combine templates with data to produce result documents, usually with an emphasis on processing text.
643 cratesDevelopment tools::Cargo plugins
Subcommands that extend the capabilities of Cargo.
640 cratesDate and time
Crates to manage the inherent complexity of dealing with the fourth dimension.
639 cratesValue formatting
Crates to allow an application to format values for display to a user, potentially adapting the display to various languages and regions.
617 cratesInternationalization (i18n)
Crates to help develop software capable of adapting to various languages and regions.
617 cratesScience::Robotics
Crates related to robotics.
568 cratesAccessibility
Assistive technology that helps overcome disabilities and impairments to make software usable by as many people as possible.
501 cratesOperating systems::Windows APIs
Bindings to Windows-specific APIs.
453 cratesOperating systems::Unix APIs
Bindings to Unix-specific APIs.
441 cratesEmulators
Emulators allow one computer to behave like another, often to allow running software that is not natively available on the host computer. Video game systems are commonly emulated.
438 cratesWeb programming::WebSocket
Crates to communicate over the WebSocket protocol.
428 cratesOperating systems::macOS APIs
Bindings to macOS-specific APIs.
388 cratesComputer vision
Crates for comprehending the world from video or images.
376 cratesMultimedia::Video
Crates that record, output, or process video.
373 cratesOperating systems::Linux APIs
Bindings to Linux-specific APIs.
370 cratesCrates to help with sending, receiving, formatting, and parsing email.
368 cratesLocalization (L10n)
Crates to help adapting internationalized software to specific languages and regions.
362 cratesScience::Geospatial
Processing of spatial information, maps, navigation data, and geographic information systems.
341 cratesMultimedia::Encoding
Crates that encode or decode binary data in multimedia formats.
301 cratesSecurity
Crates related to cybersecurity, penetration testing, code review, vulnerability research, and reverse engineering.
266 cratesRendering::Graphics APIs
Crates that provide direct access to the hardware's or the operating system's rendering capabilities.
257 cratesVirtualization
For the creation and management of virtual environments and resources of any form including containerization systems.
234 cratesRendering::Rendering engine
High-level solutions for rendering on the screen.
177 cratesRendering::Data formats
Loading and parsing of data formats related to 2D or 3D rendering, like 3D models or animation sheets.
162 cratesScience::Bioinformatics
Crates for processing large-scale biological data.
159 cratesAerospace
Crates for aeronautics (within the atmosphere) and astronautics (in outer space) applications.
157 cratesScience::Bioinformatics::Sequence analysis
Crates for processing biological sequences, including alignment, assembly, and annotation.
45 cratesScience::Bioinformatics::Genomics
Crates for processing genetic data, including sequences, abdundance, variants and analysis.
43 cratesArtificial intelligence
Crates for machine learning, deep learning, large language models, AI agents, and related tooling. Crates focused specifically on computer vision belong in the Computer vision category.
41 cratesScience::Neuroscience
Crates for research tools and processing of data related to the brain and nervous system.
31 cratesAerospace::Aerospace protocols
Crates of protocol implementations for aerospace applications.
25 cratesAerospace::Drones
Crates related to Multicopters, Fixed wing, VTOL (Vertical Takeoff and Landing) and Airships/Balloons.
23 cratesAerospace::Aerospace simulations
Crates related to any kind of simulations used in aerospace - fluids, aerodynamics, etc.
21 cratesAerospace::Space protocols
Protocol implementations for implications in space like CCSDS.
21 cratesAutomotive
Crates related to the automotive industry, including vehicle control and diagnostics.
19 cratesOperating systems::FreeBSD APIs
Bindings to FreeBSD-specific APIs.
18 cratesAerospace::Unmanned aerial vehicles
Crates related to Unmanned aerial vehicles like Multicopters, Fixed wing, VTOL (Vertical Takeoff and Landing), Airships/Balloons, Rovers, Boats, Submersibles.
16 cratesScience::Bioinformatics::Proteomics
Crates for processing protein data including sequences, abdundance and analysis.
16 cratesScience::Computational Biology::Structural Modeling
Crates for protein and biomolecular structure prediction, docking, model refinement, and physics-based biomolecular simulation.
8 cratesOperating systems::Android APIs
Bindings to Android-specific APIs.
7 cratesScience::Computational Chemistry::Cheminformatics
Crates for molecular representations, descriptors, chemical graph algorithms, file format parsing, and QSAR tooling.
7 cratesScience::Computational Chemistry::Molecular Simulation
Crates for molecular dynamics, Monte Carlo, force fields, and statistical mechanics simulations.
7 cratesScience::Computational Chemistry::Electronic Structure
Crates for quantum chemistry and electronic-structure methods such as DFT, ab initio, and correlated techniques.
2 cratesScience::Computational Biology::Systems Biology
Crates for network modeling, pathway and metabolic modeling, and whole-system simulations.
1 cratesScience::Computational Biology
Crates for computational modeling and simulation of biological systems, including structural modeling and systems-level modeling.
1 cratesScience::Computational Chemistry
Crates for computational methods in chemistry, including electronic-structure calculations, molecular simulation, and cheminformatics.
0 cratesScience::Materials Science
Crates for the study, characterization, and simulation of condensed matter and materials, including crystallography and solid-state physics.
0 crates