import 'package:flutter/widgets.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:shuffle/app.dart'; import 'package:shuffle/core/config/app_config.dart'; import 'package:shuffle/core/error/global_error_handler.dart'; import 'package:shuffle/core/logging/app_logger.dart'; import 'package:shuffle/core/routing/url_strategy.dart'; import 'package:supabase_flutter/supabase_flutter.dart'; Future main() async { WidgetsFlutterBinding.ensureInitialized(); AppLogger.configure(); installGlobalErrorHandlers(); configurePathUrlStrategy(); final config = AppConfig.fromEnvironment()..validate(); await Supabase.initialize( url: config.supabaseUrl, publishableKey: config.supabaseAnonKey, ); runApp(const ProviderScope(child: ShuffleApp())); }