🔎 Feluda is a Rust-based command-line tool that analyzes the dependencies of a project, notes down their licenses, and flags any permissions that restrict personal or commercial usage.
👋 It's still highly experimental, but fast iterating. Welcoming contributors and support to help bring out this project even better!
- Parse your project to identify dependencies and their licenses.
- Classify licenses into permissive, restrictive, or unknown categories.
- Flag dependencies with licenses that may restrict personal or commercial use.
- Output results in plain text, JSON or TUI formats. There's also a gist format which is available in strict mode to output a single line only.
If your fav language or framework isn't supported, feel free to open an feature request issue! 👋
Rust
- Rust installed on your system.
If you already had it, make sure it's up-to-date and update if needed. (Optional) Set rust path if not set already.
cargo install feluda
Arch Linux (maintained by @adamperkowski)
feluda is available in the AUR. You can install it using an AUR helper (e.g. paru):
paru -S feluda
NetBSD (maintained by @0323pin)
On NetBSD a package is available from the official repositories. To install it, simply run:
pkgin install feluda
Track releases on github releases or via release feed.
Run the tool in the project directory:
feluda
feluda --path /path/to/project/
- Default: Plain text.
- JSON: Use the
--json
flag for JSON output.
feluda --json
Sample Output for a sample cargo.toml file containing serde
and tokio
dependencies:
[
{
"name": "serde",
"version": "1.0.151",
"license": "MIT",
"is_restrictive": false
},
{
"name": "tokio",
"version": "1.0.2",
"license": "MIT",
"is_restrictive": false
}
]
For detailed information about each dependency:
feluda --verbose
In case you strictly need only the restrictive dependencies:
feluda --strict
We've an awesome ✨ TUI mode available to browse through the dependencies in a visually appealing way as well:
feluda --gui
Checkout contributing guidelines if you are looking to contribute to this project.
Currently, using choosealicense license directory for source of truth.
Feluda is licensed under the MIT License.
Happy coding with Feluda! 🚀