system_module_insights
A powerful analysis tool that scans all installed modules and provides filtering, sorting, usage metrics, dependency insights, visual indicators, and export options for Drupal sites.
System Module Insights
System Module Insights is a comprehensive Drupal module analysis tool that helps administrators, developers, and auditors deeply understand how modules are used within a Drupal installation. It provides advanced filtering, sorting, usage metrics, dependency tracking, and multi-format exports — all from a single, clean dashboard.
Features
1. Filtering, Sorting, and Search
- Real-time search with instant filtering
- Status filters: Enabled, disabled, or available
- Package filtering: Core, Contrib, Custom, etc.
- Quick filters: Custom-only or unused-only modules
- Clickable column headers for sorting
3. Module Information
- Full module path
- Version from
.info.yml - Package classification (Core, Contrib, Custom)
- Expandable description fields
4. Dependencies & Dependents
- Full dependency list
- Modules that depend on each module
- Color-coded visual dependency indicators
- Expandable lists for deeper inspection
5. Configuration Overview
- Lists config items in
config/install/andconfig/optional/ - Shows schema definitions
- Total configuration item count
6. Export Capabilities
- CSV export
- JSON export
- HTML/PDF report export
- Select which columns to include
- Exports respect current filters
7. Visual Indicators
- Blue: Custom modules
- Yellow: Enabled but unused modules
- Red: Disabled modules with dependents
- Status badges, package badges, permission markers
8. Permissions & Documentation
- Permission indicators
- Links to README files
- Links to contrib project pages
- Tooltips for quick information
9. Advanced Features
- AJAX real-time filtering
- Responsive mobile-friendly layout
- Keyboard navigation and accessibility support
- Clean print-optimized report output
- Bookmarkable filtered URLs
Installation
- Place the module directory in
modules/custom/ - Enable the module:
drush en system_module_insights - Clear cache:
drush cr
Post-Installation & How to Use
Access the Dashboard
Go to: Administration → Reports → System Module Insights
URL: /admin/reports/system-module-insights
Filtering & Sorting
- Search field filters modules instantly
- Use dropdowns for status and package filtering
- Click column headers to sort the table
Exporting
- Open “Export Options”
- Select columns or export all
- Choose CSV, JSON, HTML, or PDF
- Export reflects all active filters
Configuration
Settings page:
Administration → Configuration → System → System Module Insights
URL: /admin/config/system/system-module-insights
Display Settings
- Items per page
- Default visible columns
Performance Settings
- Cache duration
- Enable/disable AJAX
Analysis Settings
- Include test modules
- Enable deep dependency scanning
- Select scoring method
Export Settings
- Maximum export size
- Include metadata summary
Technical Details
Architecture
- Service-based architecture
- Configurable caching system
- AJAX-enabled UI
- Accessible and responsive templates
Services
system_module_insights.analyzer— core analyzersystem_module_insights.exporter— export engine
Theming
Override Twig templates:
templates/ system-module-insights-table.html.twig system-module-insights-usage-badge.html.twig
CSS / JS Customization
- Custom classes for UI elements
- Extend with
Drupal.behaviors
Troubleshooting
- AJAX not working: Check console, ensure Drupal AJAX libraries are loaded.
- Missing module data: Clear caches and verify file permissions.
- Performance issues: Increase cache duration or reduce scan depth.
Debug Mode
$config['system_module_insights.settings']['debug_mode'] = TRUE;
Requirements
- Drupal 10.x or 11.x
- PHP 8.3+
- Modern browser with JavaScript enabled
Recommended Modules
- Devel
- WebProfiler
Similar Projects
No other Drupal module provides the same level of detailed analysis, filtering, usage scoring, and export functionality in a single UI. System Module Insights offers a more comprehensive and visual analysis suite.