**CodeNetVis** is an app for Cytoscape 3.9.1+ that allows you to
visualize and explore the dependency graph of a software
The app can create a visualization treating
selected packages as magnetic poles. The dependencies are
visualized such that the directed paths are aligned along
the magnetic fields. This creates an easy-to-explore
visualization of the dependencies around the poles.
- Recommended: **[Introduction to CodeNetVis on YouTube](https://youtu.be/aC_zvUjOr8A)**
- Current support is to analyze software systems that are written in Java
- See the **[Github page](https://github.com/vgalab/CodeNetVis)** for installation instructions and more details
**Highlighted Usage Cases:**
- Revealing class dependencies, which may be used to understand how bugs may propagate across modules or for planning software testing
- Finding opportunities for code restructuring, which may be used to find classes that are related to each other but belong to different packages and thus to reorganize the structure
- Using polar layout to select a set of classes and examine the dependencies around them, which may be used to plan how to extract them out to create independent modules
- **New in v1.1:** Visualizing git repository commit information, such as the most recent changes, commit authors, and the total number of commits.
<!-- that need to be
rigorously tested to make sure an error does not impact
the other parts of the program.
Finding classes that are not well related
to each other--in function or dependency, meaning it may be
better to reorganize them in separate packages.
Using the polar layout to identify major dependency
links between classes, to find groups of classes that could be
separated into modules of their own.
**Example GitHub repositories to try with the layout:**
- [Chanchal Roy (University of Saskatchewan, Canada)](https://clones.usask.ca/)