web_app
Mason brick that scaffolds a production-ready Flutter web app with Firebase Remote Config, splash/icon setup, and a WebView shell—from a few CLI prompts.
Qoder
8 sectionsMason Brick
Overview
web_app is Qoder's Mason brick for spinning up a fully functional Flutter application with minimal prompts. Answer a few questions and the brick generates a new Flutter project, wires web and mobile targets, optional native splash/launcher icon from your logo, and Firebase Remote Config with a live base URL—so teams start on product work instead of boilerplate.
- Generate a new Flutter project with web-ready defaults
- Optional native splash and launcher icon from a PNG logo
- Optional Firebase + Remote Config with a monitored base_url
- Pre-wired WebView shell for hybrid web experiences
- Pre-gen and post-gen hooks for a smooth mason make flow
What's included
The brick packages the scaffolding teams usually hand-roll for web-first Flutter products.
- Flutter project initialization with platform folders (android, ios, web, desktop)
- Dependency setup for web and mobile targets
- Native splash and launcher icon generation from a provided PNG
- Firebase project integration path with Remote Config base_url listening for live changes
- Assets starter (loading animation + logo) and a presentation-layer WebView screen
Installation
Requires the Mason CLI. Install the brick from BrickHub locally or globally, then generate.
# Activate Mason CLI
dart pub global activate mason_cli
# Install brick (local)
mason add web_app
# Or install globally
mason add -g web_app
# Generate
mason make web_appVariables
Prompts collected during mason make web_app.
- appName — application name (string)
- url — base URL for the web shell / Remote Config default (string)
- enableRemoteConfig — wire Firebase Remote Config for live base URL (boolean)
- setupLauncherIconAndSplash — generate launcher icon and splash from a PNG (boolean)
Project structure
Generated layout emphasizes a thin core + presentation shell ready for product screens.
YOUR_APP_NAME/
├── android/
├── assets/
│ ├── loading.json
│ └── logo.png
├── ios/
├── lib/
│ ├── core/
│ │ └── app_constants.dart
│ ├── presentation/
│ │ └── screens/
│ │ └── web_view_screen.dart
│ └── main.dart
├── web/
├── linux/ macos/ windows/
├── test/
├── pubspec.yaml
└── README.mdmacOS & Linux notes
Host tooling required for file dialogs and Mason workflows on desktop generators.
- Zenity — file selection dialogs (brew install zenity / apt install zenity)
- Subversion (svn) — required by some Mason version-control flows (brew install svn / apt install subversion)
- Install these before mason make web_app to avoid mid-generation failures
Environment
Brick environment constraint published on BrickHub.
mason: ">=0.1.0-dev.57 <0.1.0"Why this exists
Hybrid web shells and Firebase-backed Flutter products share the same first-day setup cost. web_app encodes that bootstrap as a versioned brick on BrickHub so Qoder and client teams can regenerate consistent foundations instead of copy-pasting repos.