Project Layout
Cargo uses conventions for file placement to make it easy to dive into a new Cargo project:
.
├── Cargo.lock
├── Cargo.toml
├── benches
│ └── large-input.rs
├── examples
│ └── simple.rs
├── src
│ ├── bin
│ │ └── another_executable.rs
│ ├── lib.rs
│ └── main.rs
└── tests
└── some-integration-tests.rs
Cargo.toml
andCargo.lock
are stored in the root of your project (package root).- Source code goes in the
src
directory. - The default library file is
src/lib.rs
. - The default executable file is
src/main.rs
. - Other executables can be placed in
src/bin/*.rs
. - Integration tests go in the
tests
directory (unit tests go in each file they're testing). - Examples go in the
examples
directory. - Benchmarks go in the
benches
directory.
These are explained in more detail in the manifest description.