🐓 Guard clauses for JS
flap allows you to cleanly enforce integrity conditions and modifications to the inputs and outputs of functions.
You can also think of it as a generic datal-flow wrapper for functions, with a dash of pattern-matching awesomeness.
- Wraps JS functions and their arguments with guard clauses found in languages such as Elixir and Haskell
- Elegantly modifies and reacts to arguments based on expressions
- Pattern matching against object arguments
- Improves readability of complex conditions by chaining discrete units of logic
- Helps prevent deep nesting and callback hell
- Optionally bind to
Function.prototypefor maximum sugar
npm i flap
You can find detailed documentation and examples at https://flap.js.org.
Contributions are always welcome! Simply open a PR with completely covered tests.
npm run coverage