{"id":13393091,"url":"https://github.com/kit-clj/kit","last_synced_at":"2025-03-13T19:31:24.508Z","repository":{"id":37385313,"uuid":"378042379","full_name":"kit-clj/kit","owner":"kit-clj","description":"Lightweight, modular framework for scalable web development in Clojure","archived":false,"fork":false,"pushed_at":"2025-03-08T15:08:04.000Z","size":1206,"stargazers_count":507,"open_issues_count":23,"forks_count":47,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-03-08T16:19:44.791Z","etag":null,"topics":["clojure","framework","integrant","kit-clj","web"],"latest_commit_sha":null,"homepage":"https://kit-clj.github.io/","language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kit-clj.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-06-18T05:20:06.000Z","updated_at":"2025-03-08T15:08:08.000Z","dependencies_parsed_at":"2023-02-10T09:45:58.720Z","dependency_job_id":"932c3e7b-cefe-4f60-9fe2-eef821f0b486","html_url":"https://github.com/kit-clj/kit","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kit-clj%2Fkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kit-clj%2Fkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kit-clj%2Fkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kit-clj%2Fkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kit-clj","download_url":"https://codeload.github.com/kit-clj/kit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243469143,"owners_count":20295694,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clojure","framework","integrant","kit-clj","web"],"created_at":"2024-07-30T17:00:42.703Z","updated_at":"2025-03-13T19:31:24.496Z","avatar_url":"https://github.com/kit-clj.png","language":"Clojure","readme":"# Kit\n\nLightweight, modular framework for scalable production\nsystems.\n\n## Goal\n\nThe goal of Kit is to provide a template for a robust,\nscalable Clojure web application. It hides common plumbing\nthat is standard across projects via its libs system, while\nexposing code that tends to be customized in the clj-new\ntemplate.\n\nThanks to `integrant`, and `aero`, the libs are simple\nskeletons with the bulk of the customization being done in\nthe system configuration EDN file.\n\n## Quick start\n\nKit\nrequires [clj-new](https://github.com/seancorfield/clj-new),\ninstalled preferably as a tool:\n\n`clojure -Ttools install com.github.seancorfield/clj-new '{:git/tag \"v1.2.381\"}' :as clj-new`\n\nTo create a new Kit application:\n\n`clojure -Tclj-new create :template io.github.kit-clj :name yourname/app`\n\n## Latest versions\n\n| Library                            | Latest Version                                                                                                                                        |\n|------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------|\n| io.github.kit-clj/kit-core         | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-core.svg)](https://clojars.org/io.github.kit-clj/kit-core)                 |\n| io.github.kit-clj/kit-hato         | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-hato.svg)](https://clojars.org/io.github.kit-clj/kit-hato)                 |\n| io.github.kit-clj/kit-http-kit     | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-http-kit.svg)](https://clojars.org/io.github.kit-clj/kit-http-kit)         |\n| io.github.kit-clj/kit-jetty        | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-jetty.svg)](https://clojars.org/io.github.kit-clj/kit-jetty)               |\n| io.github.kit-clj/kit-metrics      | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-metrics.svg)](https://clojars.org/io.github.kit-clj/kit-metrics)           |\n| io.github.kit-clj/kit-nrepl        | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-nrepl.svg)](https://clojars.org/io.github.kit-clj/kit-nrepl)               |\n| io.github.kit-clj/kit-quartz       | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-quartz.svg)](https://clojars.org/io.github.kit-clj/kit-quartz)             |\n| io.github.kit-clj/kit-redis        | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-redis.svg)](https://clojars.org/io.github.kit-clj/kit-redis)               |\n| io.github.kit-clj/kit-repl         | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-repl.svg)](https://clojars.org/io.github.kit-clj/kit-repl)                 |\n| io.github.kit-clj/kit-selmer       | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-selmer.svg)](https://clojars.org/io.github.kit-clj/kit-selmer)             |\n| io.github.kit-clj/kit-sql          | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-sql.svg)](https://clojars.org/io.github.kit-clj/kit-sql)                   |\n| io.github.kit-clj/kit-sql-conman   | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-sql-conman.svg)](https://clojars.org/io.github.kit-clj/kit-sql-conman)     |\n| io.github.kit-clj/kit-sql-hikari   | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-sql-hikari.svg)](https://clojars.org/io.github.kit-clj/kit-sql-hikari)     |\n| io.github.kit-clj/kit-sql-migratus | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-sql-migratus.svg)](https://clojars.org/io.github.kit-clj/kit-sql-migratus) |\n| io.github.kit-clj/kit-postgres     | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-postgres.svg)](https://clojars.org/io.github.kit-clj/kit-postgres)         |\n| io.github.kit-clj/kit-mysql        | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-mysql.svg)](https://clojars.org/io.github.kit-clj/kit-mysql)               |\n| io.github.kit-clj/kit-xtdb         | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-xtdb.svg)](https://clojars.org/io.github.kit-clj/kit-xtdb)                 |\n| io.github.kit-clj/kit-generator    | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/kit-generator.svg)](https://clojars.org/io.github.kit-clj/kit-generator)       |\n| io.github.kit-clj/lein-template    | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/lein-template.svg)](https://clojars.org/io.github.kit-clj/lein-template)       |\n| io.github.kit-clj/deps-template    | [![Clojars Project](https://img.shields.io/clojars/v/io.github.kit-clj/lein-template.svg)](https://clojars.org/io.github.kit-clj/deps-template)       |\n\n### Profiles\n\nDefault libs included with no profile specified:\n\n- `kit-core`\n- `kit-undertow`\n\nAdditional profiles:\n\n- `+xtdb` - Adds the `kit-xtdb` lib\n- `+hato` - Adds the `kit-hato` lib\n- `+metrics` - Adds the `kit-metrics` lib\n- `+quartz` - Adds the `kit-quartz` lib\n- `+redis` - Adds the `kit-redis` lib\n- `+selmer` - Adds the `kit-selmer` lib\n- `+nrepl` - Adds the `kit-nrepl` lib\n- `+socket-repl` - Adds the `kit-repl` lib\n- `+sql` - Adds the default SQL libraries: `kit-sql-conman`\n  , `kit-sql-migratus`, and `kit-postgres` libs\n- `+conman` - Adds the `kit-sql-conman` lib\n- `+hikari` - Adds the `kit-sql-hikari` lib\n- `+migratus` - Adds the `kit-sql-migratus` lib\n- `+mysql` - Adds the `kit-sql-general` and `kit-mysql` libs\n- `+full` - Adds the libs `kit-xtdb`, `kit-hato`\n  , `kit-metrics`, `kit-quartz`, `kit-redis`, `kit-selmer`\n  , `kit-repl`, `kit-sql-conman`, `kit-postgres`,\n  and `kit-sql-migratus`\n\n## Libs\n\n- `kit-core` - basic utility functions used by some other\n  libs\n- `kit-xtdb` - Simple binding to connect to\n  a [XTDB](https://xtdb.com/) database node\n- `kit-hato` - HTTP client\n  using [hato](https://github.com/gnarroway/hato)\n- `kit-nrepl` - [nREPL](https://github.com/nrepl/nrepl)\n  component for use in a running system. e.g. to connect to\n  a production REPL\n- `kit-metrics` - Configurable metrics\n  using [iapetos](https://github.com/clj-commons/iapetos)\n- `kit-quartz` - Scheduler\n  using [cronut](https://github.com/troy-west/cronut) as an\n  integrant binding\n  for [quartz](http://www.quartz-scheduler.org/). Exposes\n  the `cronut` API, simply some extensions for `aero` and\n  utilities\n- `kit-redis` - An extension\n  of [core.cache](https://github.com/clojure/core.cache) for\n  Redis\n  via [carmine](https://github.com/ptaoussanis/carmine)\n- `kit-repl` - Socket REPL integrant binding for use in a\n  running system. e.g. to connect to a production REPL\n- `kit-selmer` - Templating configuration\n  with [selmer](https://github.com/yogthos/Selmer)\n- `kit-sql` - Deprecated. Use `kit-sql-conman`\n  and `kit-sql-migratus`. Pulls in both of these as generic\n  SQL integrant binding.\n  Uses [conman](https://github.com/luminus-framework/conman)\n  , [next.jdbc](https://github.com/seancorfield/next-jdbc)\n  , [hugsql](https://www.hugsql.org/),\n  and [migratus](https://github.com/yogthos/migratus)\n  directly, or implicitly\n- `kit-sql-conman` -\n  Uses [conman](https://github.com/luminus-framework/conman)\n  , [next.jdbc](https://github.com/seancorfield/next-jdbc)\n  , [hugsql](https://www.hugsql.org/),\n- `kit-sql-hikari` - General sql layer, just contains\n  connection pooling (\n  via [hikari-cp](https://github.com/tomekw/hikari-cp)) and\n  jdbc wrapper (\n  via [next.jdbc](https://github.com/seancorfield/next-jdbc))\n  .\n- `kit-sql-migratus` -\n  uses [migratus](https://github.com/yogthos/migratus) for\n  SQL migrations\n- `kit-postgres` - lib with data bindings and utilities for\n  working with Postgres\n- `kit-mysql` - lib with data bindings and utilities for\n  working with MySQL8+\n- `kit-undertow` - Server binding\n  via [ring-undertow-adapter](https://github.com/luminus-framework/ring-undertow-adapter)\n\n## Build Tool Support\n\nPresently only Clojure deps is supported, however there are\nplans to add Leiningen support.\n\n## Documentation\n\n[Documentation can be found here](https://kit-clj.github.io)\n\n## Emacs Integration\n\nAn [emacs package](https://github.com/jpe90/emacs-clj-deps-new) is available which provides a Magit-style interface to `clj-new` and `deps-new` and provides a command to create Kit web applications.\n\n## Inspiration and thanks to\n\n- [integrant](https://github.com/weavejester/integrant) as\n  the basis of the project\n- [aero](https://github.com/juxt/aero) for powerful\n  configuration used throughout\n- [re-frame template](https://github.com/day8/re-frame-template)\n  for code used directly in `kit-template`\n- [Luminus framework](https://luminusweb.com/) from which\n  the initial project that Kit's predecessor was built upon\n\n## License\n\nCopyright © 2021\n\nReleased under the MIT license.\n","funding_links":[],"categories":["Clojure"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkit-clj%2Fkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkit-clj%2Fkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkit-clj%2Fkit/lists"}