Prerequisite
Tools and background knowledge required for a BowlerKit Flutter project.
Knowledge requirements
BowlerKit's Flutter template is a Dart application using Riverpod, AutoRoute, Dio, and generated models/routes. You should be comfortable with:
- Dart and Flutter — widgets, async code, navigation, and platform builds.
- Riverpod and Flutter Hooks — providers, notifiers, consumers, and lifecycle hooks.
- Freezed/JSON serialization and build_runner — generated model and route files.
- PHP/Laravel if you select the Account profile and customize the admin panel.
- Go if you customize the Account protected API backend.
The Guest profile is local-first and does not require the backend stack.
Required tools
Run the framework-specific check after installing the CLI:
bowler doctor flutterThe current template pins Flutter 3.47.0-stable and requires Dart SDK ^3.10.0 (flutter supplies Dart). The doctor command accepts Flutter 3.38.1 or newer.
You also need:
- Git.
- Android Studio, a JDK, Android SDK, and
adbfor Android. - macOS, Xcode, and CocoaPods for iOS.
- A physical device or configured emulator/simulator for runtime testing.
Account backend requirements
Only Account projects need:
- PHP and Composer for
admin-panel. - PostgreSQL and Redis configured in Laravel and Go.
- Go 1.26.5 or newer for
api-backend.
Laravel owns authentication, migrations, uploads, webhooks, and destructive account operations. Go validates Laravel Sanctum tokens and serves protected mobile resources; it is not a second auth server.
Optional landing page tools
The generated landing-page/ is a separate Vite/TanStack Start app. Bun is preferred; npm is a supported fallback. It is not required to build or run the Flutter mobile app.
