ArchLintor: detecting architectural violations in TypeScript systems
Matheus Resende, Rafael S. Durelli, Ricardo Terra · 2025
Maintaining architectural integrity is challenging in fast-paced development environments, especially in TypeScript systems where architectural analysis is hindered by language complexity. This paper introduces ArchLintor, a static analysis tool for architecture conformance checking in TypeScript projects. By allowing architects to define rules over module interactions, ArchLintor detects architectural violations, classifies them (e.g., divergences, absences, alerts), and produces detailed reports and visualizations through graphs and dependency structure matrices (DSM). The tool supports CI/CD integration, serving as a quality gate to prevent architectural erosion before code is merged. Entirely built from scratch using widely adopted JavaScript ecosystem tools, ArchLintor offers developers a practical solution to monitor and enforce architectural rules continuously. Demo video: https://doi.org/10.6084/m9.figshare.29123549