import 'package:amplify_auth_cognito/amplify_auth_cognito.dart'; import 'package:amplify_flutter/amplify_flutter.dart'; import 'package:flutter/material.dart'; import 'package:{{name}}_example/amplifyconfiguration.dart'; Future main() async { WidgetsFlutterBinding.ensureInitialized(); final secureStorage = AmplifySecureStorage( config: AmplifySecureStorageConfig( scope: '{{name}}', // FIXME: In your app, make sure to remove this line and set up /// Keychain Sharing in Xcode as described in the docs: /// https://docs.amplify.aws/lib/project-setup/platform-setup/q/platform/flutter/#enable-keychain // ignore: invalid_use_of_visible_for_testing_member macOSOptions: MacOSSecureStorageOptions(useDataProtection: false), ), ); final authPlugin = AmplifyAuthCognito(credentialStorage: secureStorage); await Amplify.addPlugin(authPlugin); await Amplify.configure(amplifyconfig); runApp(const MyApp()); } class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( title: '{{name.titleCase()}} Example', theme: ThemeData( primarySwatch: Colors.blue, ), home: const MyHomePage(title: '{{name.titleCase()}} Example'), ); } } class MyHomePage extends StatefulWidget { const MyHomePage({super.key, required this.title}); final String title; @override State createState() => _MyHomePageState(); } class _MyHomePageState extends State { int _counter = 0; void _incrementCounter() { setState(() { _counter++; }); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text(widget.title), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ const Text( 'You have pushed the button this many times:', ), Text( '$_counter', style: Theme.of(context).textTheme.headline4, ), ], ), ), floatingActionButton: FloatingActionButton( onPressed: _incrementCounter, tooltip: 'Increment', child: const Icon(Icons.add), ), ); } }