paw 0.0.4 copy "paw: ^0.0.4" to clipboard
paw: ^0.0.4 copied to clipboard

Small, organised and customizable logger for your flutter and dart apps.

example/main.dart

import 'package:paw/paw.dart';

///
/// This is an example showcasing how to use the Paw logging library in Flutter.
/// You can run this example by executing `dart example/main.dart` in your terminal.
///
void main() {
  ///
  /// Create an instance of [paw] with custom configurations.
  ///
  final paw = Paw(
    // optional, defaults to [PAW]
    title: "MyApp",

    // optional, defaults to [true]
    shouldIncludeSourceFileInfo: true,

    // optional, defaults to [true]
    shouldIncludeTitle: true,

    // optional, defaults to [true]
    shouldPrint: true,

    // optional, defaults to [5]
    stackTraceToPrint: 5,

    // optional, defaults to [PawDarkTheme]
    theme: PawDarkTheme(),

    // Note: When the `level` is set to [null], Paw is allowed to print logs
    // of all levels. To only print logs of a certain level, set the `level` to
    // that specific level, e.g. [PawLogLevels.fetal] to only print fetal logs

    level: null, // this allows paw to print all the logs, defaults to [null]
  );

  ///
  /// Log an informational message.
  ///
  /// Use this for general app flow information, which could be helpful for
  /// understanding the app's behavior.
  ///
  paw.info("This is an informational message");

  ///
  /// Log a tracing message
  ///
  /// Use this for tracking code flow and high-volume logs
  ///
  paw.trace("This is a trace log");

  ///
  /// Log a warning message.
  ///
  /// Warnings are useful for non-critical issues that should be
  /// brought to attention.
  ///
  paw.warn("Be aware! This is a warning message");

  ///
  /// Log a data object for debugging.
  ///
  /// This is particularly useful for logging structured data, making it
  /// easier to understand complex data states.
  ///
  paw.debug({'key': 'value', 'count': 42});

  ///
  /// Log an error with additional context.
  /// Here you can pass a message, an error object, and even a stack trace
  /// for in-depth debugging.
  ///
  /// Use this for logging exceptions or errors that occur in your application.
  ///
  try {
    throw UnsupportedError("Oops! You've forgotten to implement this feature");
  } catch (e, stackTrace) {
    // Log an error with a message and error object
    paw.error(
      'An unexpected error occurred',
      error: e,
    );

    // Log a fetal log with a message, error object, and stack trace
    paw.fetal(
      'A very serious error occurred',
      stackTrace: stackTrace,
      error: e,
    );
  }
}
12
likes
160
points
52
downloads

Publisher

unverified uploader

Weekly Downloads

Small, organised and customizable logger for your flutter and dart apps.

Repository (GitHub)

Documentation

API reference

License

MIT (license)

More

Packages that depend on paw