UNPKG

agentsqripts

Version:

Comprehensive static code analysis toolkit for identifying technical debt, security vulnerabilities, performance issues, and code quality problems

53 lines (44 loc) 1.35 kB
/** * @file Detect frameworks used in code * @description Single responsibility: Identify frameworks from code content */ function detectFramework(content) { const frameworks = []; // React detection if (/import\s+.*from\s+['"]react['"]/.test(content) || /require\(['"]react['"]\)/.test(content) || content.includes('useState') || content.includes('useEffect')) { frameworks.push('react'); } // Vue detection if (/import\s+.*from\s+['"]vue['"]/.test(content) || content.includes('Vue.component')) { frameworks.push('vue'); } // Express detection if (/require\(['"]express['"]\)/.test(content) || content.includes('express()') || content.includes('router.get') || content.includes('app.use')) { frameworks.push('express'); } // Jest detection if (content.includes('jest.fn()') || content.includes('expect(') || content.includes('jest.mock')) { frameworks.push('jest'); } // Mocha detection if (content.includes('mocha') || (content.includes('describe(') && content.includes('chai'))) { frameworks.push('mocha'); } // Angular detection if (/@Component\s*\(/.test(content) || content.includes('@angular/')) { frameworks.push('angular'); } return frameworks; } module.exports = detectFramework;