This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-09-23
Channels
- # babashka (2)
- # babashka-sci-dev (401)
- # beginners (10)
- # biff (6)
- # calva (6)
- # clj-on-windows (6)
- # cljfx (13)
- # clojure (91)
- # clojure-austin (1)
- # clojure-europe (6)
- # clojure-norway (11)
- # clojurescript (14)
- # clr (3)
- # docker (3)
- # emacs (2)
- # fulcro (21)
- # hyperfiddle (2)
- # membrane (30)
- # nbb (4)
- # pedestal (7)
- # polylith (16)
- # reitit (1)
- # sci (4)
- # xtdb (9)
Since polylith docs are so good, what would you advise for auto generating docs from interface code? this may be an obvious question just point me in the right direction, i’m sure i’ll figure it out quickly. I need something that works on-prem/data privacy.
The overview docs are in GitBook (not generated) and the main poly
tool docs are being migrated from GitBook to http://cljdoc.org -- an early partial version is here https://cljdoc.org/d/polylith/clj-poly/0.2.17-alpha/doc/migrate-workspace -- and you can run http://cljdoc.org locally, if you need to.
We have been working in the issue-318 branch for a while, moving the documentation back to the polylith GitHub repo. There is an early version https://cljdoc.org/d/polylith/clj-poly/0.2.18-SNAPSHOT/doc/readme that reflects the code in the https://github.com/polyfy/polylith/tree/issue-318 branch (it's was built a few days old ago, and doesn't reflect the latest https://github.com/polyfy/polylith/tree/issue-318/doc in the branch). This will at least give you an idea about how the new cljdoc based documentation will look like when released. We will also start to build SNAPSHOT https://github.com/polyfy/polylith/releases/tag/stable-build-snapshot of the stand-alone poly tool. The new build strategy is described https://cljdoc.org/d/polylith/clj-poly/0.2.18-SNAPSHOT/doc/ci/polylith-ci-setup. Note that this is work in progress and not officially released yet, but feel free to try it out and come with feedback if you like.
Thanks, Looks good, I need to see if cljdoc works on-prem, or what my options are
There are plans to add support for generating documentation, based on the code in a workspace, but that is quite far into the future. An idea I have to support others to build tools for e.g. generation of documentation, is to be able to pass in :code
to the ws
command, which would result in the workspace structure being populated with all def/defn/defmacro
definitions in the interface, including all docstrings. Then it would be easier to build your own doc generator.
We have been working in the issue-318 branch for a while, moving the documentation back to the polylith GitHub repo. There is an early version https://cljdoc.org/d/polylith/clj-poly/0.2.18-SNAPSHOT/doc/readme that reflects the code in the https://github.com/polyfy/polylith/tree/issue-318 branch (it's was built a few days old ago, and doesn't reflect the latest https://github.com/polyfy/polylith/tree/issue-318/doc in the branch). This will at least give you an idea about how the new cljdoc based documentation will look like when released. We will also start to build SNAPSHOT https://github.com/polyfy/polylith/releases/tag/stable-build-snapshot of the stand-alone poly tool. The new build strategy is described https://cljdoc.org/d/polylith/clj-poly/0.2.18-SNAPSHOT/doc/ci/polylith-ci-setup. Note that this is work in progress and not officially released yet, but feel free to try it out and come with feedback if you like.
I don't think it'd be hard to generate mermaid diagrams to show the component<->bases<->projects graph, there's an example at the bottom of the page here https://github.com/esuomi/muotti, might be something I do if I get spare cycles, but a bit low priority.
This has already been done and posted here before in this channel by someone, but it was more than a year ago.
I'm a bit curious about what your use case is. What will it be used for?
I think it would just be easier to help new-hires get up to speed if they saw a graph like that
Disclaimer: I'm a noob here and only started looking at Polylith (after observing it from distance for a couple of years). When I clone the polylith repo and run
poly shell
info
I get this output
polylith$ info
...
interface brick api poly polyx dev extended
-------------------------------------------------- ---------------- -------------
antq antq s-- s-- s-- s-- --
api api s-- --- --- st- --
...
Error 101: Illegal dependency on namespace antq.ifc in lib.text-table.lib-table. Use antq.interface instead to fix the problem.
Is .ifc
just an old naming convention that hasn't been updated yet?Hi @U06BE1L6T! Cool that you are interested in Polylith. The https://github.com/polyfy/polylith/issues/187 that adds support for for this will be included in the next release, 0.2.18
(or if you set the sha
in the polylith
alias to the latest commit from the https://github.com/polyfy/polylith/tree/issue-318 branch, that will also work) but you can use https://github.com/polyfy/polylith/releases/tag/stable-build-snapshot pre-release if you just want to play around with Polylith and use https://cljdoc.org/d/polylith/clj-poly/0.2.18-SNAPSHOT/doc/readme documentation (work in progress) together with it.