Master RESTFUL API Development with Clojure

Learn Reitit
and Clojure

Learn how to build robust REST API with Clojure by composing libraries including Reitit, Ring, Integrant, and next.jdbc.


A better way to learn.

Starting to learn Clojure can be pretty tough. Stop struggling when searching for great resources, save time, money, and learn best practices.

Learn by doing

This course is hands-on. We build the thing and then we ship the thing. By the end of the course we'll have fully working, deployed, and secure API Service in Clojure.


The focus is on thematic units that are introduced gradually. You will never feel lost and you will always know how the things connect.


Understand how to build a web service , how to combine libraries into a cohesive unit. Comprehend in and outs and grasp how the things work together.

What are we building?

We are building Cheffy backend; AirBnB for Chefs—the frontend is build with re-frame. The service exposes Recipes, Conversations, and Accounts, everything documented with Swagger.

  • Recipes

    This allows us to CRUD recipes. Additionally recipes have steps and ingredients, which we'll also CRUD.

  • Conversations

    Conversations endpoints allows us to retrieve user conversations, list messages, and create a message.

  • Accounts

    Accounts endpoing will be handled via Auth0. We'll talk to Auth0 to store roles and obtain user information.

Browser with Swagger

What are we using?

Our REST API service exposes multiple endpoints with JWT for Auth—backed by Auth0. Serving JSON, Transit (msgpack, json), or EDN from PostgreSQL, and is hosted on Heroku.

  • Libraries

    If you spend a few minutes with a Clojurist you will know that we prefer to compose libraries, instead of relying on frameworks.

  • Services

    Modern application development relies on services instead of trying to reinvent the wheel. We'll use Auth0 for Authentication and Heroku for hosting and PostgreSQL.

Learn Clojure and Reitit.

Follow these three easy steps.

Signup for the course

Code along the videos

Build API with Clojure


Simple no-tricks pricing.

Learn Reitit PRO

Learn how to build robust REST API with Clojure by composing libraries, such as: Reitit, Ring, Integrant, next.jdbc and learning middleware pattern.

What's included

  • 8h and 51m of high quality contnet

  • Learn Reitit and middleware pattern

  • Learn solid libraries used by the community

  • Build REST API with Clojure

Pay once, own it forever

229 EUR
Get full access to all courses via subscription to ClojureStream
49€ /month
Get full access to all courses including Reagent, Re-frame, and Reitit. This includes +21h of HD videos.
399 EUR
Get Bundle

Idiomatic Clojure

Approved by experts.

The code has been reviewed by these Clojure experts.
Following this course you will learn idiomatic Clojure.

Tommi Reiman Avatar
Tommi Reiman

Programmer, clojurist and has-been it-architect. Creator of Reitit. Co-founder at @metosin.

James Reeves Avatar
James Reeves

Creator of Ring, Compojure, Hiccup, Integrant ... the list goes on and on. In general well rounded gent from the UK.

Sean Corfield Avatar
Sean Corfield

Veteran software architect, focusing on web / JVM / Clojure. Maintainer of clojure.jdbc and creator of next.jdbc.

Thomas Heller Avatar
Thomas Heller

Creator of shadow-cljs and other not so well documented libraries. Master of rants on ClojureVerse.

Ready to dive in?
Start learning now.

Frequently asked questions

What will I learn?

The focus is on Clojure and Reitit. During the course we will build RESTful API endpoints that serve JSON, Transit (msgpack, json), or EDN. Everything built with idiomatic Clojure code.

What is the frontend?

This course is purely about backend, if you are looking for frontend check — build with ClojureScript and Re-frame.

Is this course right for my skill level?

No prior backend experience with Clojure expected. We'll cover everything in the course from setup to deployment. That said, you should, at least undersand how internet works—request and response.

How long do I have access to the course?

How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.

What if I am unsatisfied with the course?

If after watching a couple of first videos you are unsatisfied, get in touch—we we'll provide a full refund.

How long is the course?

The course if few minutes shy of nine hours; 8h and 51m to be exact.

Can I buy this as a subscription?

Yes -- ClojureStream

Does this course support Open Source?

Yes! By buying this course you are supporting Open Source Projects. 10% of profits will be transferred to Clojurists Together to fund critical Clojure and ClojureScript open source projects. Additionally to that, we also support independent software developers working on Clojure projects.

Is it best practice?

Yes! The content of the course has been reviewed and approved by experts: Tommi Reiman (GitHub | Twitter), Thomas Heller (GitHub | Twitter), James Reeves (GitHub | Twitter), and Sean Corfield (GitHub | Twitter)

Who created this course?

Jacek Schae (GitHub | Twitter) is a software developer based in Switzerland. Host of ClojureScript Podcast. Main irritation point for Thomas Heller.


Since I started with video courses I have been supporting CT (Clojurists Together) and independent CD (Clojure Developers). Additionally I'm also are creating ClojureScript Podcast for everyone. Stats so far:


transfered to CT


transfered CD


plays of CLJS Podcast

Who am I?

Hello, I'm Jacek (GitHub | Twitter) software developer based in Switzerland.

Author of Learn Reagent and Learn Re-frame. Host of ClojureScript Podcast.

© 2020 Muneo GmbH © All rights reserved.