Hacker News new | ask | show | jobs
by yogthos 3610 days ago
Honestly, the fact that people put up with this in Js ecosystem amazes me to no end. I've been working with ClojureScript on the front-end for the past year, and it's just night and day.

There's a single build tool (http://leiningen.org/), and it manages dependencies, tests, builds, etc. Things just work.

Setting up a new project is as simple as:

lein new reagent-frontend myapp

I can go and start developing it by running

lein figwheel

After it starts I can open the browser at localhost:3449 and any changes I make in the source will be immediately reflected. Once I want to package for release I just do:

lein clean lein release

That's it, I now have minified and pruned Js file that's ready for production.

2 comments

This is pretty much what we’re doing with Create React App.

    npm i -g create-react-app
    create-react-app my-app
    cd my-app
    npm start # start devserver
    npm run build # build for production
Sure, but how do you go about doing things like managing dependencies, doing hot code loading, running tests, and so on?
CLJS is just a language.
It's really much more than that. There's an ecosystem around ClojureScript that's completely separate from Js, and I find the CLJS ecosystem to be far better in many respects.