Clojure and ClojureScript testing with the Clojure CLI

09 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

04 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 →

Clojure projects from scratch

26 February 2018

This post is intended primarily for two groups of people:

  1. People just starting out in Clojure, who know parts of the language but don't know how to begin structuring a real project.
  2. Seasoned Clojurians who wish to see how to structure a project with the new Clojure CLI + deps.edn and not lein or boot (even though they're still awesome).
Continue reading →

Hello, World!

27 October 2017

I've, once again, migrated my blog onto another platform. This time I've gone from WordPress on my own Linode to Cryogen on GitHub pages. This means a few things:

  1. I no longer need to worry about running my own server, even though Linode is fantastic. I just don't want to maintain anything, especially WordPress.
  2. I can blog with a Clojure based platform and integrate Klipse easily for interactive lispy posts.
  3. I can write my posts in markdown with Emacs and keep it all on GitHub.
Continue reading →