kit-clj / kit

Lightweight, modular framework for scalable web development in Clojure
https://kit-clj.github.io/
MIT License
483 stars 44 forks source link
clojure framework integrant kit-clj web

Kit

Lightweight, modular framework for scalable production systems.

Goal

The goal of Kit is to provide a template for a robust, scalable Clojure web application. It hides common plumbing that is standard across projects via its libs system, while exposing code that tends to be customized in the clj-new template.

Thanks to integrant, and aero, the libs are simple skeletons with the bulk of the customization being done in the system configuration EDN file.

Quick start

Kit requires clj-new, installed preferably as a tool:

clojure -Ttools install com.github.seancorfield/clj-new '{:git/tag "v1.2.381"}' :as clj-new

To create a new Kit application:

clojure -Tclj-new create :template io.github.kit-clj :name yourname/app

Latest versions

Library Latest Version
io.github.kit-clj/kit-core Clojars Project
io.github.kit-clj/kit-hato Clojars Project
io.github.kit-clj/kit-http-kit Clojars Project
io.github.kit-clj/kit-jetty Clojars Project
io.github.kit-clj/kit-metrics Clojars Project
io.github.kit-clj/kit-nrepl Clojars Project
io.github.kit-clj/kit-quartz Clojars Project
io.github.kit-clj/kit-redis Clojars Project
io.github.kit-clj/kit-repl Clojars Project
io.github.kit-clj/kit-selmer Clojars Project
io.github.kit-clj/kit-sql Clojars Project
io.github.kit-clj/kit-sql-conman Clojars Project
io.github.kit-clj/kit-sql-hikari Clojars Project
io.github.kit-clj/kit-sql-migratus Clojars Project
io.github.kit-clj/kit-postgres Clojars Project
io.github.kit-clj/kit-mysql Clojars Project
io.github.kit-clj/kit-xtdb Clojars Project
io.github.kit-clj/kit-generator Clojars Project
io.github.kit-clj/lein-template Clojars Project
io.github.kit-clj/deps-template Clojars Project

Profiles

Default libs included with no profile specified:

Additional profiles:

Libs

Build Tool Support

Presently only Clojure deps is supported, however there are plans to add Leiningen support.

Documentation

Documentation can be found here

Emacs Integration

An emacs package is available which provides a Magit-style interface to clj-new and deps-new and provides a command to create Kit web applications.

Inspiration and thanks to

License

Copyright © 2021

Released under the MIT license.