2 repository-uri
Restrictions on module relationships defined using file or folder path patterns to prevent regressions.
Distinct from Module Dependency Analysis: More specific than general Module Dependency Analysis by focusing on path-pattern matching for relationship rules.
Explore 2 awesome GitHub repositories matching software engineering & architecture · Path-Pattern Dependency Restrictions. Refine with filters or upvote what's useful.
Dependency-cruiser este un analizor de dependențe și linter arhitectural pentru JavaScript și TypeScript. Servește ca instrument de analiză statică pentru maparea, vizualizarea și validarea relațiilor dintre module într-un codebase, fără a necesita execuția codului. Proiectul se distinge prin capacitatea de a impune limite arhitecturale printr-un sistem bazat pe reguli. Detectează dependențele circulare, identifică modulele orfane și codul mort, și validează constrângerile de dependență folosind reguli de relaționare permise sau interzise. De asemenea, oferă o analiză cantitativă a stabilității prin calcularea cuplajului aferent și eferent pentru a identifica zonele fragile ale unui proiect. Instrumentul acoperă o gamă largă de capabilități, inclusiv parsarea modulelor pentru standarde multiple precum ES6, CommonJS și TypeScript, precum și vizualizarea grafului de dependențe cu agregare la nivel de folder. Oferă funcționalități de automatizare pentru integrare continuă (CI), cum ar fi stabilirea unei linii de bază pentru încălcări și exporturi de date structurate în formate JSON sau CSV. Sistemul include un proces interactiv de configurare a proiectului pentru a genera fișiere de configurare personalizate bazate pe mediul local.
Defines forbidden or allowed relationships between files or folders using path patterns to prevent regressions.
eslint-plugin-import este un plugin de analiză statică pentru ESLint care oferă o suită de reguli și rezolvere pentru a valida instrucțiunile de import și a impune constrângeri arhitecturale asupra modului în care fișierele importă și exportă cod. Funcționează ca un validator și rezolvator de module pentru a se asigura că declarațiile de import indică fișiere valide și că simbolurile referențiate există. Proiectul identifică lanțurile de import recursive pentru a preveni dependențele circulare și utilizează un sistem de rezoluție configurabil pentru a mapa alias-urile și căile de fișiere non-standard. De asemenea, poate distinge între fișierele interne ale proiectului și dependențele bibliotecilor externe prin potrivirea modelelor de căi și foldere. Plugin-ul acoperă zone mai largi de calitate a codului, inclusiv impunerea stilului de import pentru ordonare și grupare, restricționarea sistemelor de module specifice și verificarea disponibilității exporturilor pentru a preveni erorile de runtime. Poate limita în continuare sursele de import pe baza locației folderului sau poate interzice tipuri specifice de căi.
Uses path and folder pattern matching to distinguish between internal project files and external dependencies.