Turn your boring errors into expressive outbursts (╯°□°)╯︵ ┻━┻
A JavaScript package that adds fun prefixes to error messages. Designed to run seamlessly in both browser environments and Node.js.
npm install flip-on-fail
Or using Yarn:
yarn add flip-on-fail
// Import the package at the entry point of your application
import flip from 'flip-on-fail'
// Will throw: (╯°□°)╯︵ ┻━┻ This is an error!
throw new Error('This is an error!')
Flips are also enabled when using console.error
, because who doesn't love a dramatic table flip during debugging?
// Will throw: (╯°□°)╯︵ ┻━┻ This is a console error message!
console.error('This is a console error message!')
You can define a custom prefix for your error messages. Maybe you like emojis too?
flip.setPrefix('💥')
// Will throw: 💥 This is an error!
throw new Error('This is an error!')
But if you prefer the original ASCII art (you probably do!), here are some alternative table flippers for inspiration:
- (ノಥ益ಥ)ノ ┻━┻
- (╯'□')╯︵ ┻━┻
- ┻━┻ ︵ヽ(`Д´)ノ︵ ┻━┻
- (┛ಠ_ಠ)┛ 彡 ┻━┻
- (╯ರ ~ ರ)╯︵ ┻━┻
- (/¯◡ ‿ ◡)/¯ ~ ┻━┻
- (┛◉Д◉)┛彡 ┻━┻
- (╯°.°)╯ ┻━┻
- (┛✧ω✧)┛ 彡 ┻━┻
flip.setPrefix('┻━┻ ︵ヽ(`Д´)ノ︵ ┻━┻')
At this point you probably messed up enough with the prefix. You can come back to the default one by:
flip.resetPrefix()
You can temporarily disable or re-enable error flipping:
// Disable error flipping
flip.disable()
// Will throw: This is an error!
throw new Error('This is an error!')
// Re-enable error flipping
flip.enable()
// Will throw: (╯°□°)╯︵ ┻━┻ This is an error!
throw new Error('This is an error!')
- This project was inspired by the table_flipper Ruby gem.
- This project was pair-programmed with
Copilot
and theClaude 3.7 Sonnet
model.
This project is intended as a light-hearted joke and should be used for fun. It adds a bit of humor, but please do not take it too seriously. Feel free to use it to bring some joy and laughter into your coding sessions! Remember, even your code needs a break sometimes, so let it flip out!
(╯°□°)╯︵ ┻━┻ CONTRIBUTIONS? BRING 'EM ON!
We welcome all contributions, whether it's bug fixes or new features. Don't forget to add tests for behaviour changes and run the test suite by:
npm test
Thanks for contributing! Now go fix some errors! ┻━┻ ︵ ¯\(ツ)/¯ ︵ ┻━┻
Copyright (c) Marc Anguera Insa. Flip On Fail
is released under the MIT License.