Discover and explore top open-source AI tools and projects—updated daily.
archguardAnalyze and govern system architecture
Top 50.0% on SourcePulse
Summary
ArchGuard is an architecture workbench and governance tool for microservice/distributed systems. It automates analysis across code, components, containers, and databases, enabling the creation and enforcement of architecture fitness functions and rules. It provides actionable insights for self-service architecture improvement and governance.
How It Works
It employs multi-layered analysis, supporting design-time governance via a DSL (Feakin) and development-time scanning via CLI, Gradle plugins, or library integration. A pluggable rule engine detects various "smells" (code, test, SQL, API, documentation), and it offers C4 model-based architecture visualization. Advanced analysis covers system instability, inter-container dependencies, and metrics for volume, coupling, cohesion, and quality.
Quick Start & Requirements
Integration is via ArchGuard Library (Maven Central), Scanner CLI, or Gradle Plugin for CI/CD. The backend (ArchGuard Web) provides a RESTful API. The Chapi parser supports Java, Python, Go, Kotlin, TypeScript, C, C#, Scala, C++. Database analysis covers MyBatis, JDBI, JPA. API producers: Java, Kotlin, C#; consumers: TypeScript/JavaScript, Kotlin, Java. Docs: https://archguard.org/.
Highlighted Details
Maintenance & Community
Supported by JetBrains, the project maintains a community via WeChat. Key sub-projects include ArchGuard Frontend, Chapi source code analysis, and ArchGuard Co-mate, an AI architecture copilot.
Licensing & Compatibility
Distributed under the permissive MIT license, allowing broad compatibility with commercial use and integration into closed-source projects without copyleft restrictions.
Limitations & Caveats
Distributed system architecture metrics are marked "DOING," indicating ongoing development. The "Running state APM" is "TODO." Some language support for specific parsing features is marked "new" or not yet implemented.
3 months ago
Inactive