Skip to main content

Module plugins

Module plugins 

Source
Expand description

Plugin system for framework-aware codebase analysis.

Unlike knip’s JavaScript plugin system that evaluates config files at runtime, fallow’s plugin system uses Oxc’s parser to extract configuration values from JS/TS/JSON config files via AST walking, no JavaScript evaluation needed.

Each plugin implements the Plugin trait with:

  • Static defaults: Entry patterns, config file patterns, used exports
  • Dynamic resolution: Parse tool config files to discover additional entries, referenced dependencies, and setup files

Re-exports§

pub use registry::AggregatedPluginResult;
pub use registry::PluginRegistry;
pub use registry::PluginToolingDependencies;
pub use registry::PluginToolingEvidence;

Modules§

config_parser
AST-based config file parser utilities.
manifest_entries
Evaluation of external-plugin manifestEntries rules.
registry
Plugin registry: discovers active plugins, collects patterns, parses configs.

Structs§

FederationSource
What a Module Federation config declares, and where, for the trace output.
PathRule
A file-pattern rule with optional exclusion globs plus path-level or segment-level regex filters.
PluginConfigDiagnostic
One advisory about a config file a plugin read, before it becomes a fallow_config::WorkspaceDiagnostic.
PluginResult
Result of resolving a plugin’s config file.
PluginUsedExportRule
A used-export rule tagged with the plugin that contributed it.
ProvidedDependencyRule
A file-scoped dependency provider rule contributed by a framework plugin.
UsedExportRule
A used-export rule bound to a file-pattern rule.

Enums§

FederationSourceTarget
The thing a FederationSource names.
PluginConfigEffect
Which workspace diagnostic kind a plugin-stage advisory becomes.

Traits§

Plugin
A framework/tool plugin that contributes to dead code analysis.

Functions§

federation_trace_provenance
Match the Module Federation sources of one analysis against the discovered files, for the trace output.
push_tooling_trace_credits
Record why the unused devDependency check credits each plugin tooling dependency, so --trace-dependency explains the credit instead of calling the dependency unused.
types_package_target
The package that a @types/ package types, by the DefinitelyTyped naming convention: @types/node types node, @types/scope__pkg types @scope/pkg. None for a name outside the @types/ scope.