import 'package:nubrick_flutter/nubrick_flutter.dart';
import 'package:nubrick_flutter/provider.dart';
import 'package:nubrick_flutter/user.dart';
// ...
void main() {
WidgetsFlutterBinding.ensureInitialized();
// Initialize Nubrick Client
Nubrick("<PROJECT_ID>");
// Run your app
runApp(const MyApp());
}
class _YourAppState extends State<YourApp> {
@override
void initState() {
if (!mounted) return;
// Set user's properties to use them in the nubrick experiment
final user = NubrickUser();
await user.setProperties({
'prefecture': "Tokyo",
'environment': const bool.fromEnvironment('dart.vm.product')
? 'production'
: 'development',
});
}
@override
Widget build(BuildContext context) {
// Add NubrickProvider to your root widget
return NubrickProvider(
child: MaterialApp(
// ...
),
);
}
}