firestore_index_automator 0.1.4
firestore_index_automator: ^0.1.4 copied to clipboard
A CLI tool that wraps flutter run and automatically detects, parses, and deploys missing Firestore composite indexes — no more manual index creation.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.1.4 - 2026-05-08 #
Added #
- Implemented automatic OAuth2 token refresh (no more manual auth tokens needed).
- Added real-time building timer to the HUD with smooth ticking.
- Added collection group name parsing in
fia statusand HUD.
Fixed #
- Improved terminal stability on Windows by disabling line clearing in HUD.
- Handled HTTP 409 'index already exists' error gracefully.
- Fixed authentication failures for users with newer Firebase CLI versions.
0.1.3 - 2026-05-03 #
Fixed #
- Removed ansi_styles dependency causing pub.dev analysis failures
- Replaced with native ANSI escape codes
0.1.1 - 2026-05-03 #
Fixed #
- Fixed repository, homepage, and issue_tracker URLs in pubspec.yaml
- Removed pubspec.lock from published package to fix pub.dev dependency analysis
- Added explicit platform support declarations (linux, macos, windows)
- Added main library file for pub.dev documentation score
0.1.0 - 2026-05-03 #
Added #
- Package Name: Published under
firestore_index_automator(executable remainsfia). - Error Detection: Implemented intelligent rolling buffer and regex engine to detect and extract fragmented Firestore
FAILED_PRECONDITIONindex URLs from live terminal output. - Protobuf Parsing: Built a base64 decoder and Protobuf parser that supports both legacy API and modern
v1/rnaming schemas to extractcollectionGroup,queryScope, and indexfields. - Auto Deploy: Integrated
firebase-toolsCLI to automatically deploy parsed indexes in the background. - Smart Debounce: Implemented a deployment debouncer that batches multiple detected indexes together to prevent hitting Firebase deployment rate limits.
- Live HUD: Added a robust, pinned, ANSI-styled terminal Heads-Up Display (HUD) that shows real-time pending indexes, deployment status, and building progress without getting buried in flutter logs.
- Keyboard Shortcuts: Added interactive terminal controls (e.g.,
dto force deploy,sto skip) while piping other commands back to the underlyingflutter runprocess. - Session Summary: Added a clean summary printout upon exit detailing exactly how many indexes were detected, deployed, and skipped.
- Startup Checks: Added comprehensive environment validation for Node.js, Flutter SDK, Firebase CLI versions, and project initialization (
.firebaserc). - Cross-Platform Support: Ensured consistent behavior across Windows (PowerShell/CMD), macOS, and Linux terminal environments.
- Config Support: Added
.fia.yamlparsing to customize debounce timing, auto-deploy features, and interactivity. - Full CLI Suite: Introduced
fia run,fia deploy,fia status, andfia exportcommands.