gexd 0.0.2
gexd: ^0.0.2 copied to clipboard
A powerful CLI tool to scaffold Flutter projects using GetX with SOLID principles and Clean Architecture patterns.
Gexd CLI #
A powerful command-line tool for generating Flutter projects with GetX and Clean Architecture templates.
๐ฆ Installation & Download #
๐ Quick Install (Recommended) #
# Install from pub.dev
dart pub global activate gexd
# Verify installation
gexd --version
๐พ Download Pre-built Binaries #
Get the latest release for your platform:
| Platform | Download | Status |
|---|---|---|
| ๐ง Linux (x64) | ๐ฅ gexd-linux-x64 | โ Ready |
| ๐ช Windows (x64) | ๐ฅ gexd-windows-x64.exe | โ Ready |
| ๐ macOS (Intel) | ๐ฅ gexd-macos-x64 | โ Ready |
| ๐ macOS (Apple Silicon) | ๐ฅ gexd-macos-arm64 | โ Ready |
๐ All Releases: GitHub Releases Page
๐ Verify Downloads #
# Download checksums file
curl -LO https://github.com/altwaireb/gexd/releases/latest/download/checksums.txt
# Verify your download (example for Linux)
sha256sum -c checksums.txt --ignore-missing
๐ Quick Start #
Create Your First Project #
# Create a new GetX project
gexd create my_awesome_app
# Or create with Clean Architecture
gexd create my_app --template clean
# Navigate to your project
cd my_awesome_app
# Start developing!
flutter run
Generate Components #
# Generate a new screen
gexd make screen user_profile
# Generate a service
gexd make service api_service
# Generate a model with custom fields
gexd make model user --interactive
# Generate a controller
gexd make controller home_controller
Get Help #
# Show all commands
gexd --help
# Get help for specific command
gexd make --help
gexd create --help
Development #
This project includes a Makefile for common development tasks:
Quick Start #
# Setup development environment
make setup
# Quick development cycle (format + analyze + unit tests)
make quick
# Run all tests
make test
Available Commands #
make help # Show all available commands
make deps # Get dependencies
make format # Format code
make analyze # Analyze code
make test-unit # Run unit tests only
make test-e2e # Run E2E tests only
make build # Build executable
make install # Install globally
make clean # Clean build artifacts
make pre-commit # Pre-commit checks
Testing #
The project uses a tag-based testing system:
unit- Fast unit tests (< 30s)integration- Integration tests (30s-2m)e2e- End-to-end tests (2m+)smoke- Essential smoke tests
See TEST_TAGS_GUIDE.md for detailed testing information.
๐ข Release Process #
Creating a New Release #
# 1. Update version in pubspec.yaml
# 2. Update CHANGELOG.md
# 3. Commit changes
git add .
git commit -m "chore: bump version to v1.2.3"
# 4. Create and push tag
git tag v1.2.3
git push origin v1.2.3
๐ค Automated Release Pipeline #
The release process is fully automated via GitHub Actions:
- ๐๏ธ Multi-Platform Build: Linux, Windows, macOS (Intel + Apple Silicon)
- ๐งช Safety Tests: Unit tests run before building
- ๐ฆ Artifacts: Compiled binaries with checksums
- ๐ Release Notes: Auto-generated from commits
- ๐ Distribution: GitHub Releases + pub.dev (when ready)
๐ CI/CD Overview #
| Workflow | Trigger | Purpose | Duration |
|---|---|---|---|
| ๐จ Format & Analyze | Feature branches | Code quality checks | ~5min |
| โ Run Tests | Pull requests | Unit & build tests | ~15min |
| ๐ E2E Tests | Manual + Release tags | Comprehensive testing | ~25min |
| ๐ฆ Release | Version tags | Multi-platform build & publish | ~20min |
| ๐ค Dependabot | Weekly | Dependency updates | ~5min |
๐ก Resource Optimization: Our CI system saves ~92% of GitHub Actions minutes through smart triggering and caching.
๐ค Contributing #
We welcome contributions! Here's how you can help:
๐ Report Issues #
- ๐ Create an Issue
- ๐ก Feature Requests
- โ Ask Questions
๐ป Development Setup #
# Clone the repository
git clone https://github.com/altwaireb/gexd.git
cd gexd
# Setup development environment
make setup
# Run tests
make test
# Create a feature branch
git checkout -b feature/awesome-feature
๐ Development Guidelines #
- โ Follow the existing code style
- ๐งช Add tests for new features
- ๐ Update documentation
- ๐ฏ Keep commits focused and descriptive
๐ License #
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments #
- ๐ GetX Team - For the amazing state management solution
- ๐ Flutter Team - For the incredible framework
- ๐ Dart Community - For continuous inspiration
- ๐ค Contributors - For making this project better
โญ Star this project if you find it helpful!
๐ Home โข ๐ Docs โข ๐ Issues โข ๐ฌ Discussions