Software DNA
Paste a public GitHub repository and Software DNA clones it, analyses it statically and generates a visual DNA profile of its engineering health across eight dimensions — from architecture and security to testing and evolution.
- Role
- Designer & Full-stack Engineer
- Stack
- Angular 18
- TypeScript
- Java 21
- Spring Boot 3
- PostgreSQL
- JGit
- Canvas & SVG
01 Challenge
Turning an arbitrary — and untrusted — repository into scores people can trust: without ever executing its code, without implying measurements that were never taken, and presenting dense analysis as something to explore rather than a wall of numbers.
02 Approach
- Built a Spring Boot 3 / Java 21 analysis engine: sandboxed JGit clones, JavaParser ASTs, Tarjan cycle detection and eight pluggable scoring modules.
- Treated every repository as hostile input — no shell and no code execution, a github.com-only allow-list against SSRF, and path-traversal, XXE and resource-exhaustion guards.
- Made every score traceable: each dimension carries confidence and evidence, and anything not measured is reported as “not measured”, never as zero.
- Designed an Angular frontend on signals and OnPush, with a Canvas 2D helix hero and keyboard-navigable SVG visualisations — no D3, no Three.js.
03 Outcome
A working full-stack product with a 99 kB initial load, lazy-loaded screens, WCAG AA contrast throughout, and 106 backend tests covering the analysis and security boundaries.
