bloom_cli 0.5.0
bloom_cli: ^0.5.0 copied to clipboard
The official command-line interface for the Bloom application framework and developer platform.
Changelog #
0.5.0 - 2026-08-24 #
Added #
bloom typegen: compile-checked, typed route builder generation from route annotations.bloom insights: live dev-server request log (GET /__insightson the dev server;--url/--json/--limitflags, with port auto-discovery when--urlis omitted).bloom doctor: new System Information section (OS/CPU/CLI process memory) and a best-effort Version Check against pub.dev.- Open in editor: dev error overlay entries now have an "Open
file:line" button that launches$VISUAL/$EDITOR(orcode --goto) at the exact error location, with path-containment and shell-injection guards. bloom fonts optimize: self-hosts Google Fonts.woff2files at build time and generatesfonts.g.csswith a CLS-mitigation fallback face.bloom og generate: build-time Open Graph social card PNG generator (1200x630).- Server-side image optimizer for responsive variants.
- Production deployment for web targets.
0.4.0 - 2026-08-23 #
- Bun vendoring, SSR router endpoint, and SSG prerendering delivered end to end.
- Module authoring/scaffolding improvements.
- Scaffolded projects now resolve
bloom_js_nativeandbloom_seofrom pub.dev rather than from sibling paths.
0.3.1 #
Added #
- Live SSE Hot Reload Dev Server: Introduced
BloomLiveReloadServerwith automatic script injection and Server-Sent Events on/_bloom_hr. - Debounced Recursive Source Watcher: Added
BloomSourceWatcherwith 150ms debouncing and multi-directory inotify tracking for.dart,.html,.css, and.yamlfiles. - Server Hot Restart: Integrated sub-80ms isolate hot restart in
bloom server run --watch. - Fast JS Dev Compiler: Upgraded
bloom js devwith-O0fast development compiler and live browser reload.
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.