0 purchases
quickstart
This package allows you to create an app with:
Routing.
Tabs and independent navigation in each tab.
Bottom navigation bar or top menu depending on the screen size.
Language switch.
The UI details may change without notice.
Use this package when the functionality of your app is your priority
and you can tolerate some non-customizable opinionated looks to save a few days of development.
Out-of-the-Box Examples #
Minimal #
import 'package:flutter/widgets.dart';
import 'package:quickstart/quickstart.dart';
Future<void> main() async {
await QuickStart.ensureInitialized();
runApp(const QuickApp());
}
copied to clipboard
Firebase #
Passing a FirebaseOptions enables authentication and analytics.
import 'package:flutter/widgets.dart';
import 'package:quickstart/quickstart.dart';
import 'firebase_options.dart';
Future<void> main() async {
await QuickStart.ensureInitialized(
firebaseOptions: DefaultFirebaseOptions.currentPlatform,
);
runApp(const QuickApp());
}
copied to clipboard
Sign-in buttons will automatically show on the Settings screen.
The default is Google and Apple providers. See "customizing" down below to change that.
Configure the providers in the Firebase console following
the Firebase Auth howto.
Customizing #
Subclass QuickDelegate and pass it to ensureInitialized() for customizations.
Languages #
To change the list of supported languages, override the locales getter:
import 'package:flutter/widgets.dart';
import 'package:quickstart/quickstart.dart';
class AppDelegate extends DefaultQuickDelegate {
@override
List<Locale> get locales => [Locales.en_GB];
}
Future<void> main() async {
await QuickStart.ensureInitialized(
delegate: AppDelegate(),
);
runApp(const QuickApp());
}
copied to clipboard
When there's only one language, the switch does not how.
Authentication Providers #
By default the app shows the sign-in buttons for Google and Apple providers.
To change that, override authProviders getter:
class AppDelegate extends QuickDelegate<TabEnum> {
@override
List<String> get authProviders => [GithubAuthProvider.PROVIDER_ID];
}
Future<void> main() async {
await QuickStart.ensureInitialized(
delegate: AppDelegate(),
firebaseOptions: DefaultFirebaseOptions.currentPlatform,
);
runApp(const QuickApp());
}
copied to clipboard
TODO: Expand.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.