import 'package:flutter/material.dart'; import 'package:hirameki_srs/src/models/theme_model.dart'; import 'package:hirameki_srs/src/services/vocab_deck_repository.dart'; import 'package:provider/provider.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'src/services/deck_repository.dart'; import 'src/screens/start_screen.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); try { await dotenv.load(fileName: ".env"); // No need to catch because the file is only needed for dev } catch (_) {} runApp( MultiProvider( providers: [ Provider(create: (_) => DeckRepository()), Provider(create: (_) => VocabDeckRepository()), ChangeNotifierProvider(create: (_) => ThemeModel()), ], child: const WkApp(), ), ); } class WkApp extends StatelessWidget { const WkApp({super.key}); @override Widget build(BuildContext context) { return Consumer( builder: (context, themeModel, child) { return MaterialApp( title: 'Hirameki SRS', debugShowCheckedModeBanner: false, theme: themeModel.currentTheme, home: const StartScreen(), ); }, ); } }