ABCDEFGHIJKLMNOPQRSTUVWXYZ
1
3/16/2021
2
Started:
August 2017, by David Goldfarb <[email protected]>
3
Authors:
David Goldfarb <[email protected]>, ...
4
5
6
Usage
7
8
This document is freely editable, in the hope that the community will add value. I realize
9
that the Internet is a big place, and this may have been a stupid decision, so I reserve
10
the right to edit or delete any changes that I find offensive, disturbing, wrong, or
11
annoying; for any time, and for any reason. I also reserve the right to change access to
12
this document in the future.
13
14
If you don't like my decisions, you are free to make your copy at any time, and to use
15
it for any purpose, private or commercial.
16
17
18
readers, with respect.
19
20
21
Overview
22
23
Each time I start a new Clojure web project, I look around for the best framework. This
24
ecosystem is changing incredibly fast (which is good), but it makes it very difficult to
25
choose the right tools.
26
27
I started this Google Sheet to summarize the different frameworks. I'm starting with
28
information available in the README's of each project, but hope that:
29
1. Putting all this information in one place will already add value.
30
2. This sheet will grow with time and contributors to contain much more information.
31
32
Please add to this document, including more frameworks; useful information that I
33
omitted; and corrections of any mistakes or typos.
34
35
36
Frameworks
37
38
This section is an overview of each Framework. Detailed feature comparisons
39
can be found in the next tab. (Framework maintainers are encouraged to add info!)
40
41
42
Chestnut
https://github.com/plexus/chestnut
43
44
Chestnut is an application template for Clojure/ClojureScript applications. It
45
automatically includes support for a REPL-driven workflow; dev/prod/test
46
builds; Figwheel integration; and basic test support.
47
48
It includes backend Compojure setup, and a front-end based on a choice of
49
React wrappers. It is also well-integrated with Lighttable and Emacs/Cider.
50
51
Chestnut's general philosophy is minimalistic, with just enough support to
52
help beginners get started and to give a reasonable configuration for experienced
53
developers too. It tries not to be too opinionated.
54
55
56
Duct
https://github.com/duct-framework/duct
Undertow has a composition based architecture that allows you to build a web server by combining small single purpose handlers. The gives you the flexibility to choose between a full Java EE servlet 4.0 container, or a low level non-blocking handler, to anything in between.
57
58
59
Luminus
https://github.com/luminus-framework/luminus-template
http://62.182.86.140/main/2249000/28f0cc5d55d9932762f348cb51aedb00/Daniel%20P.%20Mannix%20-%20The%20History%20of%20Torture-eNet%20Press%20Inc.%20%282014%29.epub
60
61
Luminus is a Clojure micro-framework based on a large set of lightweight libraries.
62
It aims to provide a robust, scalable, and easy-to-use platform.
63
64
Luminus does not offer a strong philosophy in any particular direction. Rather,
65
it focuses on packaging many of the best libraries from the Clojure ecosystem and
66
bringing them together in easy-to-use packaging.
67
68
69
[meta]
70
71
[meta] is an attempt at building the fastest path from idea to startup.
72
It provides both an App Stack as well as a App Framework.
73
Declarative and Generative applications can be built which enable reuse of features across deployments of [meta].
74
75
Including Commercial Support + Automated Builds available from Degree9.
76
77
Mies
78
79
Minimal ClojureScript template.
80
81
82
Pedestal
https://github.com/pedestal/pedestal
83
84
Pedestal is a set of libraries that focuses primarily on the server side of client/server
85
applications.
86
87
Released by Cognitect, Pedestal very strongly shows the philosophy of "simple" vs.
88
"easy", with a strong focus on features that help create enterprise-level server
89
products.
90
91
Many best-practice speed and security decisions are built-in.
92
Much of the system is data-driven.
93
94
95
Reagent
https://github.com/reagent-project/reagent-template
96
97
Full-featured and opinionated template for client/server apps based on Reagent.
98
Always includes a rich set of libraries, including devcards, Reagent forms, etc.
99
100