feat(frameworks): add Drupal 8/9/10/11 support (#271)

Detects Drupal projects via composer.json drupal/* deps; extracts routes from *.routing.yml (route nodes + references edges to controllers/forms/entity handlers) and Drupal hook implementations from .module/.install/.theme/.inc. Adds yaml/twig as file-level languages and excludes core/contrib by default. Resolves #268.
This commit is contained in:
Marcelo Vani
2026-05-21 17:11:19 -05:00
committed by GitHub
parent 95dace987e
commit 5b71a89574
8 changed files with 955 additions and 2 deletions
+5
View File
@@ -2535,6 +2535,11 @@ export function extractFromSource(
// Use custom extractor for Liquid
const extractor = new LiquidExtractor(filePath, source);
result = extractor.extract();
} else if (detectedLanguage === 'yaml' || detectedLanguage === 'twig') {
// No symbol extraction — file is tracked at the file-record level only.
// Framework extractors (e.g. Drupal routing resolver) run below and may
// add route nodes / references for yaml files such as *.routing.yml.
result = { nodes: [], edges: [], unresolvedReferences: [], errors: [], durationMs: 0 };
} else if (
detectedLanguage === 'pascal' &&
(fileExtension === '.dfm' || fileExtension === '.fmx')