ShipFlutter

A fully customizable starter kit to seamlessly launch responsive Android, iOS, and Web apps with Flutter powered by Firebase and Vertex AI.

Overview

More than a boilerplate

ShipFlutter is a comprehensive Flutter starter kit designed to help developers launch cross-platform apps in days instead of months. It comes with a customizable codebase that covers all the essentials for launching production-ready apps.

Using the AI-powered builder, you can generate and customize your project, download the code, and start building immediately. The starter kit is responsive by design, allowing you to launch on Android, iOS, and Web from a single codebase.

Key Components

  • Base Framework: Android, iOS and Web support, GoRouter navigation, Signals for state management, Material theming, and localization
  • Authentication: Anonymous auth, email/password login, social signin (Google, Facebook, Twitter), responsive signin/up pages
  • Backend: Firebase integration with realtime updates, Firestore converters, CRUD operations, offline support
  • Payments: RevenueCat for mobile, LemonSqueezy for web, conversion-optimized paywall
  • Monitoring & Analytics: Performance tracking, crash reports, GDPR-compliant analytics
  • Notifications: Local and remote notifications across all platforms
  • AI Integration: Vertex AI and GenKit integration with in-app prompting
  • Templates: Multiple responsive templates including Tinder-style and chatbot interfaces

ShipFlutter was created by Marcel Pinto to bootstrap client and personal projects, now available to help other developers ship their ideas in days rather than months.

Marcel Pinto's profile picture

Marcel Pinto

Related Boilerplates

Visit website for Fast Flutter Template

Fast Flutter Template

Your Flutter template to quick-start your app development

Dart
Flutter
Firestore
Hive
RevenueCat
Firebase
Flutter
Riverpod

Features:

Auth
CI/CD
Dark Mode
i18n
IAP
Navigation
Notifications
+4 more
Visit website for FlutFast

FlutFast

Flutter SaaS Boilerplate with authentication, onboarding, in-app purchases, AI integration, and more

Dart
JavaScript
TypeScript
Flutter
Firestore
In-App Purchases
RevenueCat
Firebase
Flutter
Node.js

Features:

AI
Analytics
API
Auth
ChatGPT
CI/CD
Emails
+6 more
Visit website for HubTemplate

HubTemplate

Flutter boilerplate for building SaaS, MVPs, and AI applications quickly

Dart
JavaScript
TypeScript
Flutter
Firestore
Stripe
Firebase
Flutter

Features:

AI
Auth
Notifications
Payments
Responsive
Serverless
Storage
+3 more
Visit website for ApparenceKit

ApparenceKit

A Flutter template to launch profitable mobile apps at lightning speed

Dart
Flutter
Firestore
Supabase
RevenueCat
Flutter
Riverpod

Features:

AI
Analytics
Auth
CI/CD
i18n
Landing Page
Monetization
+4 more

Frequently Asked Questions

Dart

What makes Dart ideal for SaaS development?

Dart excels in SaaS development due to its robust ecosystem, strong typing capabilities, and excellent library support. Dart boilerplates leverage language-specific features to provide type-safe database queries, efficient API routing, and optimized runtime performance. The language's maturity means you get battle-tested packages for authentication, payment processing, and background jobs that integrate seamlessly.

Firebase

What Firebase-specific architecture patterns are implemented?

Firebase boilerplates leverage the framework's native architecture patterns including its routing system, middleware pipeline, and controller/handler structure. They implement Firebase's conventions for separating concerns, dependency injection, and service layer patterns. The codebase follows Firebase's best practices for organizing models, views/components, and business logic to ensure maintainability as your application grows.

Flutter

What Flutter-specific architecture patterns are implemented?

Flutter boilerplates leverage the framework's native architecture patterns including its routing system, middleware pipeline, and controller/handler structure. They implement Flutter's conventions for separating concerns, dependency injection, and service layer patterns. The codebase follows Flutter's best practices for organizing models, views/components, and business logic to ensure maintainability as your application grows.

Custom UI

What Custom UI-specific component architecture is used?

Custom UI boilerplates follow the framework's component composition patterns with reusable, atomic design components. They implement Custom UI's best practices for component structure, props handling, event management, and lifecycle methods. The component library includes authentication flows, dashboards, data tables, forms with validation, and navigation—all built with Custom UI's native features like hooks (React), composition API (Vue), or directives (Angular).

Material

What Material-specific component architecture is used?

Material boilerplates follow the framework's component composition patterns with reusable, atomic design components. They implement Material's best practices for component structure, props handling, event management, and lifecycle methods. The component library includes authentication flows, dashboards, data tables, forms with validation, and navigation—all built with Material's native features like hooks (React), composition API (Vue), or directives (Angular).

Firestore

What Firestore-specific features are leveraged in these boilerplates?

Firestore boilerplates utilize the database's native capabilities including its transaction model (ACID for SQL, eventual consistency for NoSQL), indexing strategies (B-tree, GiST, full-text search), and advanced features like JSON columns, array types, window functions, or document queries. The schema design takes advantage of Firestore's strengths—whether that's PostgreSQL's JSONB, MySQL's full-text search, MongoDB's aggregation pipeline, or Redis's data structures.

Lemon Squeezy

What Lemon Squeezy API features are implemented?

Lemon Squeezy boilerplates implement the provider's complete API suite including checkout sessions, subscription lifecycle management, customer portal, webhook event handling, and invoice generation. They use Lemon Squeezy's latest API version with proper error handling, idempotency keys, and retry logic. The integration includes Lemon Squeezy-specific features like payment intents, setup intents, subscription schedules, and tax calculation APIs.

RevenueCat

What RevenueCat API features are implemented?

RevenueCat boilerplates implement the provider's complete API suite including checkout sessions, subscription lifecycle management, customer portal, webhook event handling, and invoice generation. They use RevenueCat's latest API version with proper error handling, idempotency keys, and retry logic. The integration includes RevenueCat-specific features like payment intents, setup intents, subscription schedules, and tax calculation APIs.

Dart

What Dart-specific tools and libraries are included?

Dart boilerplates include the language's most popular and production-proven tools. This typically includes testing frameworks, linters, formatters, build tools, and package managers specific to Dart. You'll get pre-configured toolchains that enforce best practices, automated testing pipelines, and development environments optimized for Dart development workflows.

Firebase

How does Firebase's ORM/database layer work in these boilerplates?

Firebase boilerplates use the framework's native ORM or query builder (Prisma, Eloquent, Active Record, SQLAlchemy, etc.) with pre-configured models for users, subscriptions, teams, and common SaaS entities. They include optimized queries, relationships, migrations, seeders, and database connection pooling. The implementation leverages Firebase's specific features like eager loading, query scopes, and transaction handling for performance.

Flutter

How does Flutter's ORM/database layer work in these boilerplates?

Flutter boilerplates use the framework's native ORM or query builder (Prisma, Eloquent, Active Record, SQLAlchemy, etc.) with pre-configured models for users, subscriptions, teams, and common SaaS entities. They include optimized queries, relationships, migrations, seeders, and database connection pooling. The implementation leverages Flutter's specific features like eager loading, query scopes, and transaction handling for performance.

Custom UI

How is state management handled in Custom UI boilerplates?

Custom UI boilerplates use the framework's recommended state management approach—whether that's React Context + hooks, Redux Toolkit, Zustand, Pinia (Vue), NgRx (Angular), or Svelte stores. They include pre-configured state slices for authentication, user data, subscriptions, and UI state with proper TypeScript typing. The implementation follows Custom UI's patterns for global state, local component state, and server state synchronization.

Material

How is state management handled in Material boilerplates?

Material boilerplates use the framework's recommended state management approach—whether that's React Context + hooks, Redux Toolkit, Zustand, Pinia (Vue), NgRx (Angular), or Svelte stores. They include pre-configured state slices for authentication, user data, subscriptions, and UI state with proper TypeScript typing. The implementation follows Material's patterns for global state, local component state, and server state synchronization.

Firestore

How is the Firestore schema designed for SaaS applications?

Firestore boilerplates include production-tested schemas for multi-tenancy, user management, subscriptions, and billing. The design follows Firestore's best practices for data modeling—whether that's normalized tables with foreign keys (SQL), embedded documents vs. references (MongoDB), or partition key strategies (DynamoDB). Schemas include proper constraints, default values, and relationship management optimized for Firestore's query engine.

Lemon Squeezy

How are Lemon Squeezy webhooks handled securely?

Lemon Squeezy webhooks are verified using the provider's signature validation to prevent spoofing attacks. The boilerplate includes webhook endpoints with proper Lemon Squeezy signature verification, event type filtering, and idempotent event processing to handle duplicate deliveries. Events are processed asynchronously with retry logic, and the implementation handles Lemon Squeezy's specific webhook events like subscription updates, payment failures, and customer changes.