ansix 0.2.0 copy "ansix: ^0.2.0" to clipboard
ansix: ^0.2.0 copied to clipboard

AnsiX is a powerful and easy-to-use library that provides tools and extensions for adding ANSI color and styling support to your Dart & Flutter applications.

example/main.dart

// ignore_for_file: avoid_print

import 'package:ansix/ansix.dart';

void main() {
  // Ensure that the attached terminal supports ANSI formatting
  AnsiX.ensureSupportsAnsi();

  // StringBuffer extensions
  final StringBuffer buffer = StringBuffer()
    ..writeWithForegroundColor('Hello ', AnsiColor.blue)
    ..writeStyled(
      'AnsiX ',
      textStyle: const AnsiTextStyle(bold: true),
      foregroundColor: AnsiColor.aquamarine2,
    )
    ..writeWithForegroundColor('!', AnsiColor.red)
    ..writeWithForegroundColor('!', AnsiColor.green)
    ..writeWithForegroundColor('!', AnsiColor.blue);
  print(buffer);

  // String extensions
  print('This is a bold text'.bold());
  print('This is a text with red foreground color'.blue());

  final Map<String, dynamic> json = <String, dynamic>{
    'field1': 'value',
    'field2': 3.0,
    'field3': true,
  };

  print('');
  print('Json'.underline().colored(foreground: AnsiColor.deepSkyBlue5));
  AnsiX.printJson(json, foreground: AnsiColor.cyan3);

  print('');
  print('Tree View'.bold().colored(foreground: AnsiColor.deepSkyBlue5));
  AnsiX.printTreeView(json, theme: AnsiTreeViewTheme.$default());

  print('Data Grid'.italic().colored(foreground: AnsiColor.deepSkyBlue5));
  print(
    AnsiGrid.fromColumns(
      <List<Object?>>[
        <Object?>['Name', AnsiColor.red.name, AnsiColor.green.name, AnsiColor.blue.name],
        <Object?>['Hex', AnsiColor.red.hex, AnsiColor.green.hex, AnsiColor.blue.hex],
        <Object?>['RGB', AnsiColor.red.rgb, AnsiColor.green.rgb, AnsiColor.blue.rgb],
      ],
      theme: const AnsiGridTheme(
        border: AnsiBorder(
          style: AnsiBorderStyle.square,
          type: AnsiBorderType.all,
        ),
        headerTextTheme: AnsiTextTheme(
          alignment: AnsiTextAlignment.center,
          style: AnsiTextStyle(bold: true),
          foregroundColor: AnsiColor.cyan3,
        ),
        cellTextTheme: AnsiTextTheme(
          fixedWidth: 15,
          alignment: AnsiTextAlignment.center,
        ),
      ),
    ),
  );
}
12
likes
0
pub points
71%
popularity

Publisher

verified publishernikosportolos.com

AnsiX is a powerful and easy-to-use library that provides tools and extensions for adding ANSI color and styling support to your Dart & Flutter applications.

Repository (GitHub)
View/report issues

Topics

#ansi #cli #console #grid #treeview

Documentation

Documentation

License

unknown (LICENSE)

Dependencies

collection, data_class_plugin, meta, path

More

Packages that depend on ansix