Liking cljdoc? Tell your friends :D

reitit-extras

Clojars Project cljdoc badge CI

Additional utilities for the Reitit router.

Overview

A collection of practical utilities and middleware extensions for the Reitit router, including:

  • Context injection middleware for system dependencies
  • Development-mode handler reloading
  • Resource handlers with configurable caching
  • HTML rendering utilities with Hiccup integration
  • Comprehensive exception handling middleware
  • Testing utilities for HTTP servers

Development

Requirements

Install Java, Clojure and Babashka manually or via mise:

mise install

Note: Check versions in .mise.toml file.

Manage project

All management tasks:

bb tasks
The following tasks are available:

deps            Install all deps
fmt-check       Check code formatting
fmt             Fix code formatting
lint-init       Import linting configs
lint            Linting project's code
test            Run tests
outdated-check  Check outdated Clojure deps versions
outdated        Upgrade outdated Clojure deps versions
check           Run all code checks and tests
deploy-snapshot Deploy snapshot version to Clojars
deploy-release  Deploy release version to Clojars
release         Create and push git tag for release

Build and publish

Install locally

bb install

Deploy to Clojars from local machine

Note: Publishing to Clojars requires CLOJARS_USERNAME and CLOJARS_PASSWORD environment variables.

Deploy snapshot version:

bb deploy-snapshot

Deploy release version:

bb deploy-release

Deploy to Clojars from Github Actions

Set up following secrets for Actions:

  • CLOJARS_USERNAME
  • CLOJARS_PASSWORD

Then you will be able to push to master branch to deploy snapshot version automatically.

Once you decide to publish release you just need to bump version at deps.edn:

:aliases -> :build -> :exec-args -> :version -> "0.1.1

and create a git tag with this version. There is a shortcut command for this:

bb release

This command will create a git tag with the latest version from deps.edn and push it to git repository. Github Actions will automatically deploy a release version to Clojars.

License

MIT License Copyright (c) 2025 Andrey Bogoyavlenskiy

Can you improve this documentation?Edit on GitHub

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close