Open Source · Java, Python & Go · Multi-Language

See Your Software Architecture.
Without Reading Code.

S202 analyzes Java bytecode, Python source, and Go source to visualize dependency layers, detect cycles, and generate a concrete refactoring plan — in minutes.

S202 Layered Architecture View
5+
Languages Supported
4
Architecture Views
0
Source Lines Read
<1 min
Time to First Insight
We ran S202 on its own codebase. No source code was read. No grep. No IDE navigation. Dead code, wrong packages, missing interfaces — every finding came from looking at arrows in a diagram.
The Tool That Fixed Itself — S202 Case Study

Architecture analysis that
actually tells you what's wrong

No configuration files. No annotations to add. Load a JAR, Python, or Go project and S202 gives you an instant architectural X-ray.

🏗️

Layered Architecture View

Packages ordered by dependency depth. Every backward arrow is a layering violation — shown in red, immediately actionable.

Stable
🔀

Tangle Detection + Cut Function

Cyclic dependencies visualized as tangles. The cut function pinpoints exact method calls to remove — giving you a method-level refactoring backlog.

Stable
📦

Component View

API vs. implementation split with explicit boundary checks. Detects cross-component access and API-on-impl coupling. Works with or without JPMS.

Beta
📊

Quality Report

A one-page structural health summary: overall score 0–100, tangle density, violation count, and a prioritized recommended focus list.

Beta
🐍

Python Source Analysis

Full dependency graph from Python source — imports, calls, inheritance, type annotations. Same layered and component views as Java.

Alpha

Zero Configuration

Open a JAR, Maven project, Gradle project, or Python source directory. No YAML, no config file, no project setup. Architecture in seconds.

Stable

Every view reveals something different

Layered Architecture View

Layered Architecture View

Topological ordering by dependency depth. Red = layering violation. Orange = package cycle.

Tangle View

Tangle View

Cyclic dependencies isolated and made cuttable at method level.

Component View

Component View

API (blue) and impl (yellow) boundaries with violation detection.

Quality Report

Quality Report

Structural health score with executive summary and prioritized focus list.

WFX Quality View

Quality Dashboard

Real-world WFX project analyzed: score, cycles, violations at a glance.

Python Analysis

Python Architecture

The same layered view applied to a Python codebase — no source reading required.

The Tool That Fixed Itself

We pointed S202 at its own codebase. No source code was read. Here's what it found before a single line was touched:

  • #1reader — all implementations directly visible, no API boundary
  • #2SCCVisualizationHelper — zero callers (dead code)
  • #3SCCDAGBuilder — only kept alive by its own test
  • #4EdgeClassification — wrong package, one caller elsewhere
  • #5domain — no API boundary at all
  • #6project — three public classes, no interface

Every single item came from looking at arrows in a diagram. Then each was fixed — and verified again in S202.

Read the full case study →
S202 Component View — final clean state after refactoring

Your stack. Analyzed.

Java (JAR)

Stable
📦

Maven

Stable
🐘

Gradle

Beta
🐍

Python

Alpha
⚙️

C

PoC
🐹

Go

Alpha
🔷

TypeScript

Planned
🦀

Rust

On Request

From zero to architecture
in three commands

Requires Java 21+ and Maven 3.9+. WFX (the UI platform) is bootstrapped automatically on first build.

1

Clone & build

One script bootstraps WFX and builds S202

2

Launch the UI

A JavaFX window opens immediately

3

Open your project

File → Open JAR / Maven Project / Python Source

# Linux / macOS
git clone https://github.com/Weigend/S202.git
cd S202
chmod +x build-all.sh && ./build-all.sh

# start the UI
./run-ui.sh

# or analyze your JAR directly:
./run-ui.sh path/to/your-app.jar

# Windows
build-all.bat
run-ui.bat

Ready to see your architecture?

S202 is free and open source under the Apache 2.0 license. No sign-up. No telemetry. Just drop your JAR and see.