Introduction
1.
Getting Started
1.1.
Installation
1.2.
First Steps with Cargo
2.
Cargo Guide
2.1.
Why Cargo Exists
2.2.
Creating a New Package
2.3.
Working on an Existing Package
2.4.
Dependencies
2.5.
Package Layout
2.6.
Cargo.toml vs Cargo.lock
2.7.
Tests
2.8.
Continuous Integration
2.9.
Publishing on crates.io
2.10.
Cargo Home
3.
Cargo Reference
3.1.
The Manifest Format
3.1.1.
Cargo Targets
3.1.2.
Rust version
3.2.
Workspaces
3.3.
Specifying Dependencies
3.3.1.
Overriding Dependencies
3.3.2.
Source Replacement
3.4.
Dependency Resolution
3.5.
Features
3.5.1.
Features Examples
3.6.
Profiles
3.7.
Configuration
3.8.
Environment Variables
3.9.
Build Scripts
3.9.1.
Build Script Examples
3.10.
Build Cache
3.11.
Package ID Specifications
3.12.
External Tools
3.13.
Registries
3.13.1.
Registry Authentication
3.13.1.1.
Credential Provider Protocol
3.13.2.
Running a Registry
3.13.2.1.
Registry Index
3.13.2.2.
Registry Web API
3.14.
SemVer Compatibility
3.15.
Future incompat report
3.16.
Reporting build timings
3.17.
Lints
3.18.
Unstable Features
4.
Cargo Commands
4.1.
General Commands
4.1.1.
cargo
4.1.2.
cargo help
4.1.3.
cargo version
4.2.
Build Commands
4.2.1.
cargo bench
4.2.2.
cargo build
4.2.3.
cargo check
4.2.4.
cargo clean
4.2.5.
cargo doc
4.2.6.
cargo fetch
4.2.7.
cargo fix
4.2.8.
cargo run
4.2.9.
cargo rustc
4.2.10.
cargo rustdoc
4.2.11.
cargo test
4.2.12.
cargo report
4.3.
Manifest Commands
4.3.1.
cargo add
4.3.2.
cargo generate-lockfile
4.3.3.
cargo info
4.3.4.
cargo locate-project
4.3.5.
cargo metadata
4.3.6.
cargo pkgid
4.3.7.
cargo remove
4.3.8.
cargo tree
4.3.9.
cargo update
4.3.10.
cargo vendor
4.3.11.
cargo verify-project
4.4.
Package Commands
4.4.1.
cargo init
4.4.2.
cargo install
4.4.3.
cargo new
4.4.4.
cargo search
4.4.5.
cargo uninstall
4.5.
Publishing Commands
4.5.1.
cargo login
4.5.2.
cargo logout
4.5.3.
cargo owner
4.5.4.
cargo package
4.5.5.
cargo publish
4.5.6.
cargo yank
5.
FAQ
6.
Appendix: Glossary
7.
Appendix: Git Authentication
Light
Rust
Coal
Navy
Ayu
The Cargo Book
Cargo Guide
This guide will give you all that you need to know about how to use Cargo to develop Rust packages.
Why Cargo Exists
Creating a New Package
Working on an Existing Cargo Package
Dependencies
Package Layout
Cargo.toml vs Cargo.lock
Tests
Continuous Integration
Cargo Home
Build Cache