Cargo Features Manger
A TUI-like cli tool to manage the features of your rust-projects dependencies.
You can view all available features and easily toggle (enable & disable) them with one button click. All of your changes will directly be reflected in your Cargo.toml file.
install
cargo install cargo-features-manager
usage
viewer
To start the tool run cargo features in your project root dir.
This will open the dependency-selector:

Now you can select the dependency for which you want to change the enabled features.
Selecting a dependency will open the feature-selector:

When using cargo features -d <dependency name> it will directly open the corresponding feature-selector.
navigation
โ to move up
โ to move down
Space | Enter | โ to select
ESC | โ to move back
dependency selector
Dependency which do not have any features are marked grey. Dev-Dependency are marked with ๐งช. build-Dependency are marked with ๐ ๏ธ.

feature selector
All default features are marked Green.

When hovering above a feature it shows other features which the selected feature requires.

Features marked with ๐ฆ mean that they require an optional dependency.

Features which an active feature requires are marked grey.

search mode
At any point you can start typing like normal. This will start using your input as a search query.
prune
You can run prune with cargo features prune
this will disable all features which are not required to compile.
always keep
If your project requires a features to be enabled which does not make the compile fail. you can create a file
called Features.toml in there you can define features which will not get disabled.
= ["help"]