bloomBUILD•SHIP•BLOOM
.md
Config Schema

bloom.yaml Reference

The master configuration file that drives the Prebuild engine, AST code generation, UI preset styles, and OTA deployment channels.

Complete Schema

bloom.yaml
yaml
# bloom.yaml - Master Project Configuration
name: my_app
version: 1.0.0+1
description: "A reactive Flutter application built with Bloom"

# Native Platform Sync
native:
  app_id: com.bloom.myapp
  display_name: "Bloom App"
  
  permissions:
    camera: "Used to take profile photos"
    photo_library: "Used to upload gallery images"
    location_when_in_use: "Used to discover nearby places"
    notifications: true

  deep_links:
    schemes:
      - "bloomapp"
    hosts:
      - "app.bloom.dev"

  flavors:
    dev:
      app_id_suffix: ".dev"
      display_name: "Bloom (Dev)"
    staging:
      app_id_suffix: ".staging"
      display_name: "Bloom (Staging)"
    prod:
      app_id_suffix: ""
      display_name: "Bloom"

# Bloom UI Registry Settings
ui:
  style: "nova"       # nova | vega | maia | lyra | mira | luma | sera | rhea
  paths:
    primitives: "lib/bloom_ui/primitives"
    theme: "lib/bloom_ui/theme"

# OTA Cloud Updates
ota:
  app_id: "bloom-app-uuid"
  channel: "production"
  auto_download: true

Native Permissions & Deep Links

Declaring permissions in native.permissions prompts bloom prebuild to automatically inject description strings into iOS Info.plist and permission tags into Android AndroidManifest.xml.

Flavors & Environments

Define custom bundle ID suffixes and app titles for different deployment targets (dev, staging, prod) without managing multiple Xcode schemes manually.