Crisp is an opinionated linter for
git-commit
messages built on top of the
Conventional Commits specifications. It
is built in response to cater to certain requirements that
commitlint
could not fulfill our needs at
Weburz.
NOTE: Crisp is still a WORK-IN-PROGRESS project and IS NOT recommended for usage in production environments yet!
We built Crisp at Weburz due to limitations of commitlint
which were hampering
our development workflows. Hence, with Crisp, we expect to resolve some of those
concerns and we hope others outside Weburz will be able to make some use of
Crisp as well!
- Unopinionated nature of
commitlint
: When usingcommitlint
for some of our projects we realisedcommitlint
does not strictly adhere to its specifications! It is possible to share custom configurations asnpm
packages for everyone else to use. We believe a linter should be strict and opionionated, hence Crisp will strictly adhere to the Conventional Commits specs sheet! - Dependency on Node.js: A minor concern for us when using
commitlint
was its dependency on Node.js for its runtime. We want our CLI tools to be lightweight and be shipped as executable binaries! - Self-sufficient, lightweight and ease-to-use: With respect to the
aforementioned pointers,
commitlint
can be time-consuming and (kind of) difficult to use with all its configuration options. We want to make it easier to use Crisp so that developers can focus on writing code instead of configuring (and debating about) a linter.
Crisp isn't;
- An enhancement of
commitlint
(even though it is based on its intended specs sheet). - It will not have a functionality to comply with the idea of "shareable configurations".
- A clone of
commitlint
with a similar CLI UI/UX as documented here in thecommitlint
docs.
Crisp is licensed under a free and open-source license which makes it free to use, copy and distribute its source code as long as you adhere to the terms and conditions of the licensing terms. For more information on the licensing details, check out the LICENSE document.