Editing Clojure with Neovim

4 May 2018

I've used Spacemacs since I started working with Clojure a few years ago, it's an extremely powerful system on par with full IDEs such as Cursive. I highly recommend either of these tools to the budding Clojure(Script) developer, they will carry you as far as you need to go and beyond.

The reason I have drifted back to Vim (Neovim specifically) is because I never felt quite at home within Emacs, which Spacemacs is built upon. I wrote JavaScript (among other languages) in Vim for around five years before I began really studying Clojure. Vim and it's nuances are pretty deeply buried within my brain and muscle memory (if that's actually a thing).

Continue reading →

Finding new dependencies with Depot

29 March 2018

If you're using lein you can use lein-ancient to find newer versions of your dependencies, if you're using boot you probably have something similar. With the Clojure CLI however you have to keep track of these things manually.

I've created a little tool called Depot that aims to give you this same new version detection for your deps.edn file. The README is probably enough to get you going but here's a little example anyway.

Continue reading →

Clojure and ClojureScript tests on Travis

29 March 2018

As far as I can tell, there isn't a canonical way to run your Clojure(Script) tests on Travis through the Clojure CLI. I think it's slightly easier for those of you using lein, but here's how to do it with clj.


Continue reading →

Clojure and ClojureScript testing with the Clojure CLI

9 March 2018

This post is sort of an extension of a previous post, Clojure projects from scratch. That will introduce you to structuring your project around a deps.edn file, here we're going to simply add a couple of dependencies that allow you to run your tests.

In a Leiningen project, lein test will execute your Clojure tests, no questions asked. In a Clojure CLI / deps.edn based project we have no such command, tests have to be executed by a custom built test runner script.

Continue reading →

Clojure and ClojureScript nREPL with Clojure CLI

4 March 2018

If you've decided to try out the new Clojure CLI introduced with Clojure 1.9 you may have found yourself slightly lost when it comes to getting your CIDER (or other development environment) hooked up to your project through nREPL. My previous post, Clojure projects from scratch, may help you with understanding these concepts and tools if you're struggling to get going.

In this post I'm going to show you a few simple steps you need to take to get your nREPL running smoothly. I am hosting the ClojureScript nREPL through NodeJS, you can probably adjust the configuration if you need it to run in something else.

Continue reading →