Open
Description
Use cats-effect-std
and base the implementation on std.Console
.
trait ColorizedConsole[F[_]] {
def println(s: ColorizedString): F[Unit]
def print(s: ColorizedString): F[Unit]
//TBD - error printing methods?
}
object ColorizedConsole {
//TBD - should `conf` be implicit?
def instance[F[_]: std.Console](implicit conf: ConfiguredColorize): ColorizedConsole[F] = ...
}