3 ms·
If only the Clojure(script) community would keep an up-to-date full guide on how to do modern web development with Clojure+ClojureScript... I'm 1000% sold on C
by blunte 8y ago
If only the Clojure(script) community would keep an up-to-date full guide on how to do modern web development with Clojure+ClojureScript...
I'm 1000% sold on Clojure (and have done some production back-end tools with it), but every time I try to do front end or mobile, I struggle without outdated guides or books and relative lack of other current online resources to get me reasonably down the road toward success.
Apparently people who successfully use these tools are happily working and not having the time to educate new people. Of course it's not their responsibility, but it does seem that the Clojure community is far less involved in nurturing new users than many other languages/toolkits/frameworks.
- jarcane 8y agoThis is why, after last year one of our consultant teams struggled with this very thing, I built Clojurice: https://github.com/jarcane/clojurice https://github.com/jarcane/clojurice Full-stack setup with Boot and hot reloading on both front and backend, with some basic SASS, DB, and configuration setup as well. Have a look; even if it's not for you, it might give you some idea how to set up an application and dev environment.
- slifin 8y agoThis is my impression as well, we do need better landing page esque docs and more blogs deps.edn, shadow clj, and regeant seems like what I would try and target at the moment unless trying to do full stack datoms In which case Fulcro looks like the future there just very complicated to learn I think I need to learn graphql first to help my understanding
- yogthos 8y agoLuminus provides ClojureScript support out of the box along with documentation on how to use it. It's been around for years now, and the primary goal is to provide a smooth beginner experience: http://www.luminusweb.net/docs/clojurescript.html http://www.luminusweb.net/docs/clojurescript.html You can create a new project with Clojure/Script support by adding different flags. For example, for a re-frame project: lein new luminus myapp +re-frame This will generate the needed boilerplate and configuration. You can now start the server by running: lein run The server will start a nREPL that you can connect the editor to on port `7000`, this is defined in the `my-dev-config.edn` file. The typical workflow is to connect to the REPL, and run your code as you're writing it. Next, you start ClojureScript compiler in a separate terminal with: lein figwheel The front-end workflow typically involves having figwheel running while you write the code, and it will automatically push changes to the browser. You can also connect to the nREPL started by Figwheel from the editor. This port is specified in `project.clj` under `:figwheel` with the `:nrepl-port` key. The default is `7002`. Once you connect the editor you run `(cljs)` function to switch to the ClojureScript REPL. You can now evaluate any code that's running in the browser. Note that Figwheel has to be started, and the page loaded in the browser first. The project is set up to keep all the code in the same repository, and you have three separate source paths: * `clj` - server-side code * `cljc` - code shared between the server and the client * `cljs` - client-side code Packaging the app is done by running lein uberjar