bloom_cli 0.3.0
bloom_cli: ^0.3.0 copied to clipboard
The official command-line interface for the Bloom application framework and developer platform.
Changelog #
0.3.0 #
Breaking #
bloom addandbloom removenow validate plugin names: an unrecognized name prints the supported plugin ids and exits with code1, writing nothing tobloom.yamland skipping prebuild. Previously any string was accepted and written straight tobloom.yaml, so a typo such asbloom add camreareported success while silently configuring nothing.- Plugin names are canonicalized (trimmed, lowercased,
-converted to_), sosecure-storage,secure_storageandSecure-Storageall resolve to the single canonical idsecure_storage, and that canonical id is what gets written tobloom.yaml.
Added #
- Incremental Static Regeneration (ISR) for SSR: Wires up the
revalidate: Duration(...)parameter in@BloomLoaderannotations to enable stale-while-revalidate full-page HTML caching inbloom build web --server. Routes withrevalidateserve cached HTML within the duration, serve stale HTML immediately while regenerating in the background once stale, and populate cache on demand on first hit. - Real headless-browser prerendering for SSG/SSR:
bloom build web --static/--servernow compile the real Flutter web app (flutter build web --release) and drive a real headless Chromium instance (viapuppeteer) to capture the genuine rendered DOM for each route, replacing the previous static placeholder-shell HTML. Falls back gracefully to the old shell template whenever Chromium is unavailable or a route fails to render, so a build never fails or hangs because of prerendering.bloom_framework'sBloomAppnow signals readiness (and force-enables the Flutter semantics/accessibility tree, which is what produces real descriptive DOM content) after its first frame, on web only. - Real Bloom-branded PWA icons:
bloom build web --static/--servernow generate genuineIcon-192.png/Icon-512.png/maskable/apple-touch-icon/favicon assets from the real Bloom five-petal gradient mark (rasterized via the same headless Chromium pipeline), instead of amanifest.jsonthat pointed at files which never actually existed. Falls back to leaving any pre-existing icons untouched when Chromium is unavailable.
Fixed #
- Documented plugins received no prebuild transformations: the prebuild engines only recognized
camera,notificationsandlocation, sobackground_tasksnever hadWAKE_LOCKinjected and the hyphenated spellings shown in the docs matched nothing at all. Plugin metadata now lives in a single sharedBloomPluginCatalogread by both the Android and iOS prebuild engines and bybloom add/bloom remove, so the CLI and the platform manifests can no longer drift apart.
0.1.0 #
- Project Creation & Templates:
bloom create <app>with official and community starter templates (--template). - Interactive Dev Server:
bloom devwith wireless LAN pairing and TUI shortcuts. - Diagnostics & Continuous CI Health:
bloom doctorand strictbloom doctor --ci. - Zero-Config Native Autolinking:
bloom add,bloom deps,bloom why, andbloom workspace. - Native Module Authoring & Sandbox:
bloom create module,bloom module dev, andbloom module test. - Asset Optimization Pipeline:
bloom assets optimize,bloom assets analyze,bloom assets generate. - Security & Vulnerability Auditing:
bloom auditandbloom security scan. - Architectural Explanation:
bloom explain route <path>andbloom graph. - Ecosystem Package Registry:
bloom registry searchandbloom registry info. - Automated Upgrades & Migrations:
bloom upgradeandbloom doctor --upgrade.