One crate, one job
A crate is a Rust package you can reuse. Use it when it saves boring work, like parsing CLI flags, reading dates, or making coloured output.
Do not add crates because they look popular. For your internship repo, you should be able to explain why each dependency exists.
What Cargo does
Cargo reads your Cargo.toml file, downloads dependencies, builds them, and records exact versions in Cargo.lock.
For an app or CLI project, commit Cargo.lock. It helps another builder, mentor, or recruiter run the same dependency versions you used.