Skip to main content

Automate your Flutter app setup like a pro

Project description

FlutterCraft 🛠️🚀

Automate your Flutter app setup like a pro.
From folder structure to backend integration, from icons to GitHub repo setup — FlutterCraft does it all, in one CLI command.

License: AGPL v3 Build Stars PyPI version PyPI Downloads


✨ Features

  • 🎨 Beautiful CLI Interface - Modern, Gemini-inspired design with ASCII art
  • 📦 Flutter Version Management - Upgrade Flutter with real-time progress tracking
  • 🔄 FVM Integration - Install, manage, and switch between Flutter SDK versions
  • Animated Loading Indicators - Visual feedback during command execution
  • 📊 Smart Version Tracking - See available updates at a glance
  • 🛠️ Comprehensive Help System - Built-in help for all commands
  • ⌨️ Auto-completion - Tab completion with live command suggestions
  • 🎯 Error Handling - Clear, actionable error messages with debugging info

🤖 CLI Status

The interactive CLI features a beautiful, modern interface! 🎨

✨ Beautiful Gemini-Style Interface

  • 🎨 ANSI Shadow ASCII Art: Modern, bold FlutterCraft branding
  • 📦 Bordered Input Box: Professional Frame-based input with automatic borders
  • 📋 Permanent Completion Menu: Dedicated area below input that updates live as you type
  • ⌨️ Interactive Navigation:
    • ↑/↓ arrows to navigate completions with visual highlighting
    • Tab to fill input without submitting
    • Enter to select from menu or submit command
  • ⚡ Slash Commands: Modern command syntax (/quit, /clear, /help)
  • 🔄 Dynamic Updates: Header automatically updates when Flutter version changes
  • 📍 Smart Footer: Shows current path and git branch/status
  • 🎯 Live Completions: Menu updates instantly as you type, showing command descriptions

✅ Current Features (v0.1.2)

NOTE: The current CLI is only supported on windows. Support for macOS and Linux will be added in the future.

🚀 Flutter Commands

  • flutter upgrade - Upgrade Flutter to the latest version
    • Support for --force, --verify-only, --continue, --verbose
    • Real-time output with animated loading spinner
    • Automatic version tracking after upgrade
    • Built-in help with flutter upgrade --help

🔄 FVM Management

  • fvm install - Install Flutter Version Manager
  • fvm uninstall - Remove Flutter Version Manager
  • fvm releases [channel] - List available Flutter SDK versions
    • Channels: stable, beta, dev, or all
  • fvm list - Show all installed Flutter SDK versions

⚡ Slash Commands

  • /quit - Exit FlutterCraft CLI
  • /clear - Clear screen while preserving header
  • /help - Show comprehensive command help
  • /about - Display CLI information and version

🎨 UI Features

  • Animated Loading Indicators - Braille spinner during command execution
  • Smart Version Display - Shows update availability: 3.32.6 (→ 3.35.6 available) or 3.35.6 ✓
  • Error Panels - Persistent error display with red borders and exit codes
  • Command History - Navigate with arrow keys, auto-suggest from history
  • Auto-completion - Tab completion with live command suggestions

🚀 Upcoming Features

  • Cross-Platform Support: The current CLI is only supported on windows.
  • Beautiful Themes: The user will be able to select from different themes.
  • More Flutter Commands: flutter doctor, flutter --version, and more
  • Project Creation: create command to generate new Flutter projects with a wizard
  • Enhanced FVM Control:
    • fvm remove <version>: Uninstall a specific Flutter SDK version
    • fvm setup <version>: Install and setup a Flutter version
    • fvm use <version>: Switch between installed Flutter versions
  • Backend Integration: Connect to Firebase or Supabase projects
  • GitHub Automation: Create and push to a new repository on GitHub
  • App Icon Generation: Automatically generate app icons for all platforms

📥 Installation

From PyPI (Recommended)

pip install fluttercraft

From TestPyPI

pip install -i https://test.pypi.org/simple/ fluttercraft

Start FlutterCraft

After installation, run:

fluttercraft start

⚡ Development Setup

If you want to contribute or modify the code:

git clone https://github.com/UTTAM-VAGHASIA/fluttercraft.git
cd fluttercraft
python -m venv venv
.\venv\Scripts\Activate.ps1  # On Windows
# source venv/bin/activate   # On macOS/Linux
pip install -e .
fluttercraft start

🤝 Contributing

Please read CONTRIBUTING.md for how to contribute and local setup.


📜 License

AGPL v3


🛡 Security

If you discover a security vulnerability, please check SECURITY.md for how to report it.


🌍 Join the Dev Tribe

Star this repo to support the project, and feel free to fork it, improve it, or just vibe with it. ❤️

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fluttercraft-0.1.2.tar.gz (46.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fluttercraft-0.1.2-py3-none-any.whl (56.0 kB view details)

Uploaded Python 3

File details

Details for the file fluttercraft-0.1.2.tar.gz.

File metadata

  • Download URL: fluttercraft-0.1.2.tar.gz
  • Upload date:
  • Size: 46.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fluttercraft-0.1.2.tar.gz
Algorithm Hash digest
SHA256 979949033453d01d5a2667a05a3b102ffc4436c240da7cb72af046839ab2e24c
MD5 f7613e496a50cbfe630e35e45881ec2c
BLAKE2b-256 fcdcf45b38636c2629a2d6afdff4566e39288c1902f651355c6ef35e0177b294

See more details on using hashes here.

Provenance

The following attestation bundles were made for fluttercraft-0.1.2.tar.gz:

Publisher: publish-to-pypi.yml on UTTAM-VAGHASIA/fluttercraft

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fluttercraft-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: fluttercraft-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 56.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fluttercraft-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 57a25450b1aed2d923ee3168e40d3c75ab8263cc24ce6e93b2ab6470349a7d53
MD5 2fc279a80ec7b57fc9425063e8e96689
BLAKE2b-256 f57d41b470bcd1d5e60a8b6af7ec01754077ae462a6ca4d7250370c32fb2b799

See more details on using hashes here.

Provenance

The following attestation bundles were made for fluttercraft-0.1.2-py3-none-any.whl:

Publisher: publish-to-pypi.yml on UTTAM-VAGHASIA/fluttercraft

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page