top | item 39245466

(no title)

ytjohn | 2 years ago

This is really cool. And as OP pointed out, I really like the pipeline integration. Like when linting catches function-level complexity, but in a cross functional way. I prefer to think of programs in layers where the top layers can import lower layers, but never the other way (and also very cautious on horizontal imports). Something like this would help track that. Unfortunately, I'd really need to support Go. I find it interesting the the code is written in Go, but doesn't support Go. But I will watch this project.

From the visualization perspective, it reminds me a lot of Gource. Gource is a cool visualization showing contributions to a repo. You see individual contributors buzzing around updating files on per-commit and per-merge.

https://github.com/acaudwell/Gource

discuss

order

gabimtme|2 years ago

The visualization is actually inspired by Gource, but taken to the 3D space, it's a really cool project.

Golang is very challenging to implement, because dependencies between files inside a package are not explicitly declared, you can just use any function from any file without importing it as long as they both belong into the same package, so supporting Golang would probably require spawning an LSP and resolving symbols.

The reason for implementing dep-tree in Go was because things were going to get algorithmic af, and better to choose a language as simple as possible, knowing that it also needed to be performant.

rob74|2 years ago

If Go treats all files inside a package the same, maybe you should use packages as the "unit" in Go instead of files? That would probably still be useful, at least for bigger projects...

jimmySixDOF|2 years ago

Another 3D code base tool is Primitive they were pushing almost into IDE territory but not sure anything got beyond beta but maybe with Apple Vision Pro they might take another swing.....

https://primitive.io