flutterload-cli
v1.0.0
Published
AI-powered Flutter package installer CLI
Maintainers
Readme
FlutterLoad - AI-Powered Flutter Package Installer
Streamline your Flutter development workflow with natural language package installation
Overview
FlutterLoad is an intelligent CLI tool that leverages Google's Gemini AI to understand your Flutter project requirements and automatically generate optimized package installation commands. Simply describe your Flutter project needs in natural language, and FlutterLoad will determine the appropriate packages from pub.dev and configuration steps.
Key Benefits
AI-Powered Intelligence
- Natural language processing for Flutter project requirements
- Intelligent package recommendations from pub.dev based on use case
- Automated complex Flutter project setup and configuration
Security and Reliability
- Open Source: Complete transparency with publicly available source code
- Command Preview: All commands are displayed before execution
- User Authorization: Explicit approval required for each operation
- Free Gemini API: Utilizes Google's complimentary AI service
- Local Execution: All operations performed on your local environment
Enhanced Developer Experience
- Intelligent Flutter project and folder management
- Real-time package installation progress tracking
- Persistent API key storage with one-time configuration
- Modern command-line interface with Flutter-inspired design
Quick Start
Installation
npm install -g flutterload-cliInitial Setup
flutterloadFlutterLoad will guide you through the initial configuration and API key setup process.
How It Works
1. Project Configuration
flutterload
# Specify target folder or use current directory2. Requirement Specification
Describe your Flutter project needs in natural language:
✔ What Flutter packages do you want to install? › I want to add authentication and HTTP networking to my app3. AI Analysis and Command Generation
FlutterLoad processes your request and generates optimized Flutter package installation commands:
Commands to run:
1. flutter pub add firebase_auth
2. flutter pub add http
3. flutter pub add provider
4. flutter pub get4. Confirmation and Execution
Review and approve the generated commands:
✔ Proceed with installation? › YesUse Cases
| Input Description | Generated Setup | |------------------|-----------------| | "add http and provider packages" | HTTP networking with Provider state management | | "firebase authentication and firestore" | Firebase auth and Firestore database integration | | "create new flutter app with bloc" | New Flutter project with BLoC state management | | "add image picker and camera" | Image selection and camera functionality | | "install shared preferences and sqflite" | Local storage and SQLite database packages |
Features
User Interface
- Clean, modern command-line design with Flutter-inspired colors
- Real-time progress indicators with step tracking
- Clear command preview and confirmation
- Structured output with visual separators
Project Management
- Automatic Flutter project creation and navigation
- Current directory package installation support
- Complex Flutter project structure handling
Progress Monitoring
- Sequential step tracking with counters
- Percentage-based completion indicators
- Live Flutter command output display for transparency
- Clear visual separation between operations
API Key Management
- Secure input handling with masked entry
- Global configuration storage
- One-time setup with persistent storage
- Automatic key validation
Security and Privacy
Security Features
- Complete Transparency: All Flutter commands are displayed before execution
- User Authorization: Explicit approval required for each package installation step
- Local Execution: All operations performed on your local machine
- Open Source: Full code visibility and community review
- Free AI Service: Utilizes Google's complimentary Gemini API
- Secure Storage: API keys stored locally with no external transmission
Security Guarantees
FlutterLoad is designed with security as a primary concern:
- Never executes commands without explicit user permission
- Does not transmit project files to external servers
- Only installs verified packages from pub.dev
- Does not modify files without user visibility and approval
- Operates without requiring paid subscriptions or premium services
Installation Methods
Global Installation (Recommended)
npm install -g flutterload-cli
flutterloadSingle Use
npx flutterload-cliLocal Installation
npm install flutterload-cli
npx flutterloadRequirements
- Node.js: Version 18.0.0 or higher
- Flutter: Latest stable version recommended
- Dart: Included with Flutter
- Gemini API Key: Available free from Google AI Studio
API Key Configuration
Obtaining Your API Key
- Navigate to Google AI Studio
- Create a free Google account if needed
- Generate a new API key
- Launch
flutterloadand enter your key when prompted
Environment Variable Setup
# Add to your .env file
GEMINI_API_KEY=your_api_key_here
# Or configure globally
export GEMINI_API_KEY=your_api_key_hereAdvanced Usage
Custom Flutter Project Configuration
flutterload
✔ Enter folder name: my_flutter_app
✔ What Flutter packages do you want to install: create new app with state management and networkingIndividual Package Installation
flutterload
✔ Enter folder name: .
✔ What Flutter packages do you want to install: http provider shared_preferencesFlutter-Specific Configuration
# Complete Flutter app with state management
"create new flutter app with bloc pattern and networking"
# Firebase integration
"firebase authentication, firestore, and cloud messaging"
# UI and navigation
"material design with go_router navigation"Contributing
We welcome contributions from the Flutter development community. Here are ways to contribute:
- Bug Reports: Submit issues via GitHub Issues
- Feature Requests: Propose new features through GitHub Issues
- Pull Requests: Fork the repository, implement changes, and submit pull requests
- Documentation: Help improve documentation and examples
Development Environment
git clone https://github.com/vaibhavgupta5/flutterload.git
cd flutterload
npm install
npm linkAuthor
Vaibhav Gupta - @vaibhavgupta5
Support the Project
If FlutterLoad improves your Flutter development workflow, please consider giving it a star on GitHub.
Built for Flutter developers, by Flutter developers
Additional Examples
State Management
# Provider pattern
"provider for state management with shared preferences"
# BLoC pattern
"flutter_bloc for complex state management"
# Riverpod setup
"riverpod with code generation"Backend Integration
# REST API integration
"http package with dio for api calls"
# GraphQL integration
"graphql_flutter for graphql queries"
# Real-time features
"socket_io_client for real-time communication"UI Development
# Material Design
"material design with custom themes"
# Cupertino (iOS style)
"cupertino widgets for ios design"
# Custom animations
"flutter animations with lottie"Device Features
# Camera and gallery
"image_picker with camera functionality"
# Location services
"geolocator for location tracking"
# Push notifications
"firebase_messaging for push notifications"Storage Solutions
# Local database
"sqflite for local database storage"
# Secure storage
"flutter_secure_storage for sensitive data"
# File handling
"path_provider with file operations"Professional package management made simple.
