This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-02-13
Channels
- # announcements (18)
- # babashka (52)
- # beginners (47)
- # calva (45)
- # clj-kondo (31)
- # clojure (18)
- # clojure-brasil (2)
- # clojure-europe (3)
- # clojure-sweden (25)
- # clojurescript (19)
- # cursive (15)
- # datalevin (11)
- # defnpodcast (2)
- # duct (1)
- # editors (1)
- # emacs (6)
- # gratitude (1)
- # introduce-yourself (6)
- # jobs-discuss (11)
- # leiningen (3)
- # lsp (10)
- # luminus (2)
- # off-topic (4)
- # podcasts (2)
- # reitit (2)
- # shadow-cljs (10)
- # sql (9)
- # xtdb (4)
Hi, what tools would you use if you wanted to create a graph from your namespace that contains all your functions, their definitions and ideally their interdependencies?
I have a whole bunch of saved links to projects which I haven't really tried myself. Can share them if you want.
This in particular looks promising, although it doesn't include definitions: https://github.com/gfredericks/clj-usage-graph This does include definitions, although it's not just something that creates a picture - it's a whole local web app: https://github.com/jpmonettas/clograms
This may also be useful: https://github.com/benedekfazekas/morpheus
Thank you guys. I has a crazy idea today - create 3d vr scene i can walk through and think about my code. Hammock ocullus driven development 🙃. I already did some tests with A-frame and babashka
With the clj-kondo analysis, which morpheus also uses, you will probably be able to fetch the definition source as well, using the location information.
What you are doing here is also already available in clojure-lsp which has a call hierarchy (incoming and outgoing) with code navigation
Would love to see a video of how the end result looks like. :) Even if it's just an experiment.
i was looking into clojure-lsp (as it use clj-kondo) before i asked here but i was not successful to communicate with it from clojure yet (via stdin/out and process). if you know any good examples i will be grateful.
Btw. “graph” was probably a really misleading word. I need some data structure (edn, json..) that i will parse into hiccup basically.
@U0522TWDA clojure-lsp also has a Clojure API, perhaps it exposes call hierarchy etc?
Else maybe just look into the code and do it yourself. It's based on the clj-kondo analysis data: https://github.com/clj-kondo/clj-kondo/blob/master/analysis/README.md
@U04V15CAJ That may be all i need, thanks. @U2FRKM4TW Clograms looks cool. It reminds me some smalltalk ide 😉
I think https://github.com/nextjournal/clerk does this before render the notebook.