snoop
ghostwheel
snoop | ghostwheel | |
---|---|---|
3 | 2 | |
77 | 598 | |
- | - | |
0.0 | 4.0 | |
11 months ago | 3 months ago | |
Clojure | Clojure | |
Eclipse Public License 2.0 | Eclipse Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
snoop
-
fulcrologic/guardrails: spec as a loose type checker
and if you want something closer to the guardrails syntax there is: https://github.com/CrypticButter/snoop
-
Which type declaration library is the standard nowadays?
I've been using it together with https://github.com/CrypticButter/snoop it has been great and really hitting the sweet-spot of what you could expect from a type system.
-
Spec vs. Preconditions
You can take a look at malli instead of spec. Then take a look at the snoop library (https://github.com/CrypticButter/snoop) that provides some goodies on top of malli to easily define schema for function parameters and return types.
ghostwheel
-
fulcrologic/guardrails: spec as a loose type checker
big fan of fulcro logic, but isn’t this almost identical to https://github.com/gnl/ghostwheel ?
-
Python dataclass equivalent
if all you care about is information / documentation, and maybe validation, then spec or malli are fine. using spec during runtime to simulate a type system is a poor choice in most cases, because you are doing runtime type checking (something akin to dependent types or even esoteric contracts that are hard/impossible to express statically). There are some libs that help bolt a typed facade (using spec) onto the familiar defn / fn, https://github.com/gnl/ghostwheel https://github.com/Provisdom/defn-spec .
What are some alternatives?
martian - The HTTP abstraction library for Clojure/script, supporting OpenAPI, Swagger, Schema, re-frame and more
truss - Assertions micro-library for Clojure/Script
rcf - RCF – a REPL-first, async test macro for Clojure/Script
clj-otel - An idiomatic Clojure API for adding telemetry to your libraries and applications using OpenTelemetry.
spec-tools - Clojure(Script) tools for clojure.spec
guardrails - Efficient, hassle-free function call validation with a concise inline syntax for clojure.spec and Malli
kaocha - Full featured next gen Clojure test runner
test-refresh - Refreshes and reruns clojure.tests in your project.
hashp - A better "prn" for debugging
grasp - Grep Clojure code using clojure.spec regexes
scope-capture - Project your Clojure(Script) REPL into the same context as your code when it ran