Corin Devtool
this is a working in progress project. DO NOT USE IN PRODUCTION using this package in production environment can be attacked
Getting Started
install dependency
- install from shell
flutter pub add dev:corin
- install from pubspec.yaml
dev_dependencies:
corin: version_name
Usage
Add to app
import 'package:corin/corin.dart';
final _navigatorKey = GlobalKey<NavigatorState>();
Widget build(BuildContext context) {
return MaterialApp(
title: 'Demo',
navigatorKey: _navigatorKey,
builder: kDebugMode
? (context, child) {
return corinBuilder(context, _navigatorKey, child);
}
: null,
home: HomePage(),
);
}
add dio interceptor
if(kDebugMode) {
dio.interceptors.add(CorinNetworkInterceptor());
}
add Error Handler
if(kDebugMode) {
FlutterError.onError = (detail) {
CorinDev.logFlutterError(detail);
FlutterError.dumpErrorToConsole(detail);
};
PlatformDispatcher.instance.onError = (error, stack) {
CorinDev.logPlatformError(error, stack);
return true;
};
}
add custom log
void log(
String message, {
String tag = 'log',
Object? error,
StackTrace? st,
LogLevel level = LogLevel.info,
}) {
if (kDebugMode) {
CorinDev.log(
LogRecord(message: message, tag: tag, error: error, level: level),
);
}
}
add custom tool
class TestTool extends ToolBase {
@override
String get name => 'Test';
@override
Widget build() => Center(child: FlutterLogo());
}
if(kDebugMode) {
CorinDev.addApp(TestTool());
}