- Do NOT implement rare standards (such as fraktur and blink support).
- Favor explicit over convenient naming, e.g., use
RedFg
instead ofRed
. - Do NOT predefine every possible color or famous color sets (like CSS, Xterm). Assume only dynamic color usage.
- Trust the developers. Provide unsafe methods which might cause unexpected behavior if not used with proper guarantees.
- Allow partial styling without auto-reset. Allow developers to decide when to close styling.
Try these examples in your terminal!
$ git clone https://github.com/abiriadev/iris && cd iris
$ go run ./examples/gradient
$ go run ./examples/xor
lolcat implementation with IRIS.
$ figlet 'IRIScat: like lolcat but with IRIS' | cowsay -n | go run ./examples/iriscat