BowlerPlate
Backends

Overview

2/19/2026

Bowlerplate is designed to be backend-agnostic, supporting multiple powerful options to fit your project needs.

Overview

Bowlerplate is built with a flexible architecture that decouples the Flutter mobile application from the backend services. While the frontend logic remains consistent, you can choose the backend technology that best suits your project's scaling needs, team expertise, and infrastructure preferences.

We provide official implementations and ready-to-use API clients for several popular backend frameworks.

Official Backends

Currently, Bowlerplate supports the following backends:


Comparison at a Glance

Choosing the right backend depends on your specific requirements:

FeatureLaravelHonoPocketBase
LanguagePHPTypeScript / JSGo
Admin PanelYes (Filament)No (External)Yes (Built-in)
Real-timeYes (Reverb/Pusher)Yes (WebSockets)Yes (Native SSE)
DeploymentTraditional / ServerlessEdge / ServerlessSelf-hosted (Single Binary)
EcosystemMassive (Packages)Growing (Bun/Vite)Focused
StatusReadyIn DevelopmentIn Development

How It Works

The Flutter app communicates with the backends using a standardized REST API structure. This ensures that:

  1. Uniform Models: Your Dart models (generated by Freezed) stay the same regardless of the backend.
  2. Modular Services: Swapping backends typically only involves updating your baseUrl in the mobile app constant files.
  3. Authentication: All official backends implement a consistent authentication flow (Bearer Token/Sanctum/JWT).

Next Steps

If you are just getting started, we highly recommend using the Laravel backend as it provides the most comprehensive experience including a full-featured admin dashboard.

Check out the Laravel as Backend guide to set up your environment.

On this page