Workflow
TangleGuard can be uses in various ways, depending on your needs.
However, below you see the recommended workflow for a software development team.
-
Codebase Exploration via the Designer Browse your codebase as a graph within the TangleGuard Designer. You can see the packages and modules of your codebase and how they are connected to each other. Take your time to understand the structure and relationships between different components. You’ll likely be surprised about how components depend on each other.
-
Identify issues and weird dependencies As you likely know, components are supposed to be loosely coupled. Often autocompletion, AI coding and missing defined boundaries lead to dependencies which will make the maintenance of your code harder. Hover over nodes in the visualization and find dependencies you did not expect, and refactor them soon.
-
Define Layers within the Designer In the best case, you codebase is build as a layered, onion-based or a hexagonal architecture already. Then you can define those layers easily with the Designer Desktop App. That way, TangleGuard informs you about architecture drift and dependencies which violate your layered principles. Those layers definition are stored in the configuration file.
-
Validate via Designer or CLI You you are free of violations and want to stay free of violations, you should enforce your target architecture within your CI/CD pipeline via the TangleGuard GitHub Action. That way can reject code with violations. Alternatively, you can use the TangleGuard CLI directly on your computer to validate your architecture locally. Once a violation is found, you better fix it. Another option, would be to have the Designer open while developing or just looking in it regularly. Then, Validate your architecture regularly. TangleGuard traverses your source code and compares the actual dependencies against the allowed dependencies.