TKK_E32220332/lib/main.dart

54 lines
1.5 KiB
Dart

import 'package:flutter/material.dart';
import 'package:supabase_flutter/supabase_flutter.dart';
import 'package:provider/provider.dart';
import 'services/mqtt_service.dart';
import 'screens/login_screen.dart';
import 'screens/register_screen.dart';
import 'screens/home_screen.dart';
import 'screens/analytics_screen.dart';
import 'screens/image_result_screen.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
// Initialize Supabase with the provided URL and Publishable Key
await Supabase.initialize(
url: 'https://ddmhzzegejbsshihzext.supabase.co',
anonKey: 'sb_publishable_IJJ8fXD9CXfjMeu8vNJ8bw_NhWyTJKy',
);
runApp(
MultiProvider(
providers: [
ChangeNotifierProvider(create: (_) => MqttService()..connect()),
],
child: const MyApp(),
),
);
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Coffee IoT',
debugShowCheckedModeBanner: false,
theme: ThemeData(
brightness: Brightness.dark,
primarySwatch: Colors.green,
scaffoldBackgroundColor: Colors.black,
),
initialRoute: '/login', // Back to Login to test Supabase
routes: {
'/login': (context) => const LoginScreen(),
'/register': (context) => const RegisterScreen(),
'/home': (context) => const HomeScreen(),
'/analytics': (context) => const AnalyticsScreen(),
'/image_result': (context) => const ImageResultScreen(),
},
);
}
}