cargo-depcription

Crates.iocargo-depcription
lib.rscargo-depcription
version0.2.4
created_at2025-07-06 21:41:07.557828+00
updated_at2025-07-12 01:59:11.836364+00
descriptionTransforms your rust project dependencies into an explicative dependency choice markdown table!
homepagehttps://github.com/Julien-cpsn/cargo-depcription
repository
max_upload_size
id1740463
size63,444
Julien C. (Julien-cpsn)

documentation

https://github.com/Julien-cpsn/cargo-depcription

README

Cargo depcription

Transforms your rust project dependencies into an explicative dependency choice markdown table!

Installation

Simply

cargo install depcription

Usage

In current directory

cargo depcription

With path

cargo depcription --manifest-path ~/Path/to/my/Cargo.toml

Custom columns

[!NOTE] Please note that default columns are name, version and comment

You can use the provided columns in the order you want!

cargo depcription --column name-with-any-link --column version --column features --column comment

Example

Input:

...manifest...

[dependencies]
# Serialization & Deserialization
## Deserialize toml manifests
##! Hidden comment
toml_edit = { version = "0.23.1", features = ["serde"] }
## Parse crates-io metadata
crates-io-metadata = { version = "0.1.0", features = ["scrap"] }

# Output
## Transform dependencies to markdown table
to_markdown_table = "0.1.5"

# Utils
## Generic errors
anyhow = "1.0.98"
## CLI parser
clap = { version = "4.5.41", features = ["derive"] }
## Allow async function usage
tokio = { version = "1.46.1", features = ["rt", "rt-multi-thread", "macros"] }
## Lazy variables
once_cell = "1.21.3"

Output:

| **Category / Library**              | **Version** | **Comment**                              |
|-------------------------------------|-------------|------------------------------------------|
| **Serialization & Deserialization** |             |                                          |
| toml_edit                           | 0.23.1      | Deserialize toml manifests               |
| crates-io-metadata                  | local path  | Parse crates-io metadata                 |
| **Output**                          |             |                                          |
| to_markdown_table                   | 0.1.5       | Transform dependencies to markdown table |
| **Utils**                           |             |                                          |
| anyhow                              | 1.0.98      | Generic errors                           |
| clap                                | 4.5.41      | CLI parser                               |
| tokio                               | 1.46.1      | Allow async function usage               |
| once_cell                           | 1.21.3      | Lazy variables                           |

Help

Usage: cargo-depcription [OPTIONS] [MANIFEST_PATH]

Arguments:
  [MANIFEST_PATH]  Cargo manifest to use, leave empty for current directory manifest

Options:
  -s, --skip-uncommented  Do not print the dependencies that are not commented
  -c, --column <COLUMN>   Columns to use instead of the default ones [possible values: name, name-with-repository, name-with-documentation, name-with-homepage, name-with-any-link, version, exact-version, features, comment]
  -h, --help              Print help

Dependencies

Category / Library Version Features Comment
Serialization & Deserialization
toml_edit 0.23.1 serde Deserialize toml manifests
crates-io-metadata 0.1.0 scrap Parse crates-io metadata
Output
to_markdown_table 0.1.5 Transform dependencies to markdown table
Utils
anyhow 1.0.98 Generic errors
clap 4.5.41 derive CLI parser
tokio 1.46.1 rt, rt-multi-thread, macros Allow async function usage
once_cell 1.21.3 Lazy variables

License

The MIT license for this project can be seen here

Commit count: 0

cargo fmt