Smart bundler analyzer for modern web applications.
brew install foxworth-uni/dannycargo install --path crates/danny-clidanny --helpDanny works with zero configuration for most projects. For customization, create a .danny.toml:
[javascript]
load = ["react", "nextjs"] # Load built-in frameworksSee the Configuration Guide for all options.
Danny supports custom rules via TOML files in the .danny/ directory. Rules are automatically discovered and allow you to mark exports as used, skip files, or customize analysis behavior.
Quick start:
# Initialize with examples
danny rules init
# List all loaded rules
danny rules list
# Validate rule syntax
danny rules check
# Test rules against a file
danny rules test src/myfile.tsExample rule:
# .danny/internal-apis.toml
[[rules]]
name = "internal-apis"
[rules.match]
path_starts_with = ["src/internal/"]
[rules.action]
mark_used = true
reason = "Internal API"See the Custom Rules Guide for complete documentation.
cargo build --releasecargo testcargo run -p danny-cli -- [ARGS]MIT
See CONTRIBUTING.md for development guidelines.