import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:wandergo/app.dart'; import 'package:wandergo/core/storage/preferences.dart'; Future main() async { WidgetsFlutterBinding.ensureInitialized(); // dotenv 로드 — .env 파일이 없으면 기본값으로 동작 try { await dotenv.load(fileName: '.env'); } catch (_) { // .env 파일이 없는 경우 무시 (기본값 사용) } final preferences = await SharedPreferences.getInstance(); // 번들한 글꼴의 라이선스 — 패키지 라이선스와 함께 라이선스 화면에 보인다(OFL 고지 의무) LicenseRegistry.addLicense(() async* { final text = await rootBundle.loadString('assets/fonts/OFL.txt'); yield LicenseEntryWithLineBreaks(const ['Pretendard'], text); }); runApp( ProviderScope( overrides: [sharedPreferencesProvider.overrideWithValue(preferences)], child: const WanderGoApp(), ), ); }