1. Introduction
  2. 1. Getting Started
    1. 1.1. Installation
    2. 1.2. First Steps with Cargo
  3. 2. Cargo Guide
    1. 2.1. Why Cargo Exists
    2. 2.2. Creating a New Package
    3. 2.3. Working on an Existing Package
    4. 2.4. Dependencies
    5. 2.5. Package Layout
    6. 2.6. Cargo.toml vs Cargo.lock
    7. 2.7. Tests
    8. 2.8. Continuous Integration
    9. 2.9. Build Cache
  4. 3. Cargo Reference
    1. 3.1. Specifying Dependencies
    2. 3.2. The Manifest Format
    3. 3.3. Configuration
    4. 3.4. Environment Variables
    5. 3.5. Build Scripts
    6. 3.6. Publishing on crates.io
    7. 3.7. Package ID Specifications
    8. 3.8. Source Replacement
    9. 3.9. External Tools
    10. 3.10. Registries
    11. 3.11. Unstable Features
  5. 4. Cargo Commands
    1. 4.1. Build Commands
      1. 4.1.1. bench
      2. 4.1.2. build
      3. 4.1.3. check
      4. 4.1.4. clean
      5. 4.1.5. doc
      6. 4.1.6. fetch
      7. 4.1.7. fix
      8. 4.1.8. run
      9. 4.1.9. rustc
      10. 4.1.10. rustdoc
      11. 4.1.11. test
    2. 4.2. Manifest Commands
      1. 4.2.1. generate-lockfile
      2. 4.2.2. locate-project
      3. 4.2.3. metadata
      4. 4.2.4. pkgid
      5. 4.2.5. update
      6. 4.2.6. vendor
      7. 4.2.7. verify-project
    3. 4.3. Package Commands
      1. 4.3.1. init
      2. 4.3.2. install
      3. 4.3.3. new
      4. 4.3.4. search
      5. 4.3.5. uninstall
    4. 4.4. Publishing Commands
      1. 4.4.1. login
      2. 4.4.2. owner
      3. 4.4.3. package
      4. 4.4.4. publish
      5. 4.4.5. yank
    5. 4.5. General Commands
      1. 4.5.1. help
      2. 4.5.2. version
  6. 5. FAQ
  7. 6. Appendix: Glossary

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
  • Build Cache