Tint is a library for terminal string styling extended upon Dart's String
type.
// tint.dart
import 'package:tint/tint.dart';
void main() {
print('underlined blue text on white background'
.underline()
.blue()
.onWhite());
}
The snippet will produce an underlined blue text on a white background once you run it inside a terminal.
The example at example/main.dart
file contains examples for all APIs. Try running it and you'll get something this.
Install the latest version of tint as a dependency as shown in pub.dev.
For reference, all of the available APIs will be used as an example in the example/main.dart
file.
Foreground Colors
black
red
green
yellow
blue
magenta
cyan
white
brightBlack
orgray
orgrey
brightRed
brightGreen
brightYellow
brightBlue
brightMagenta
brightCyan
brightWhite
Background Colors
onBlack
onRed
onGreen
onYellow
onBlue
onMagenta
onCyan
onWhite
onBrightBlack
oronGray
oronGrey
onBrightRed
onBrightGreen
onBrightYellow
onBrightBlue
onBrightMagenta
onBrightCyan
onBrightWhite
Attributes
bold
dim
italic
underline
blink
inverse
strikethrough
Dynamic Colors
rgb({int r, int g, int b})
onRgb({int r, int g, int b})
Utilities
reset
(reset the color using ANSI code)strip
(remove all ANSI codes)
Tint is an alternative to,
Node's chalk is the library that inspired tint the most but the naming of the APIs such as onMagenta
instead of bgMagenta
and certain aspects of the library are mostly influenced by the console crate from Rust. The ansicolor and ansi_styles packages also provide the same functionality but with a different delivery for the usage. But I personally find extension methods syntactically more fun to use.