This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-04-22
Channels
- # announcements (8)
- # babashka (4)
- # beginners (164)
- # calva (17)
- # cider (30)
- # cljdoc (4)
- # cljs-dev (6)
- # clojure (103)
- # clojure-europe (63)
- # clojure-nl (1)
- # clojure-norway (1)
- # clojure-portugal (1)
- # clojure-uk (3)
- # clojured (10)
- # clojuredesign-podcast (2)
- # clojurescript (16)
- # conjure (2)
- # core-async (9)
- # cursive (26)
- # datalevin (4)
- # datomic (156)
- # gratitude (1)
- # holy-lambda (8)
- # honeysql (9)
- # hoplon (6)
- # off-topic (55)
- # polylith (14)
- # portal (21)
- # reagent (5)
- # reitit (16)
- # releases (3)
- # shadow-cljs (87)
- # spacemacs (3)
- # tools-deps (25)
- # xtdb (9)
Do I have to copy and paste the dependencies of bases and components to deps.edn in the root directory every time?
Bases and components have external libraries in their deps.edn, and those will not go to the development project's deps.edn in the root. And the bases/components do not list dependencies to components at all (though they still need to require them in the code), and they are only in the project
Then how do I import all dependencies (in bases and components) to local REPL? This realworld example has all dependencies here. https://github.com/furkan3ayraktar/clojure-polylith-realworld-example-app/blob/master/deps.edn
If you use the :local/root
syntax (which is supported by most IDE’s except Cursive) these dependencies will be picked up and you will not have to repeat them. If you add your bricks with extra-paths
in ./deps.edn
then you also have to add their libraries manually to ./deps.edn
.
@U2BDZ9JG3 who is the author of the realworld example app, is also a Cursive user, which is the reason he added the bricks as extra-paths
.
If you only use VSCode/Calva or Emacs/Cider then the :local-root
syntax is to be preferred. We wanted the examples to work for all users and that’s why we haven’t used the :local/root
syntax.
In our project I started using both :local/root
and :extra-paths
- and added a comment to the latter that it's only a crutch for us Cursive users. Is there any reason why I shouldn't use both?
> Is there any reason why I shouldn't use both? I suppose possibility for bugs, when someone forgets to do both and still works in their env?
Thank you! :local/root
works fine with Calva.
Cursive doesn't work with multiple bases.
What kind of tooling do you use to bundle (CLJS) frontend code in the polylith backend, so it can be deployed together? Or does everyone use a separate domain and mechanism to serve the frontend files
we run figwheel-main for dev with the config inside of the base deps.edn file. Then on deploy we build the assets and have a small clojure script that hashes the files and copies them into the resource folder before we build the uberjar