Almusanid Flutter Template Generator
A powerful VS Code extension that generates complete Flutter projects using custom Mason templates. Create production-ready Flutter applications with pre-configured architecture, services, and components.
Features
🚀 Complete Project Generation
- Generate full Flutter projects with custom architecture
- Pre-configured services (Network, Permissions, Notifications, etc.)
- Built-in widgets and components
- Firebase integration ready
- Localization support (English & Arabic)
🏗️ Professional Architecture
- Clean Architecture pattern
- Dependency Injection setup
- Routing configuration
- Theme management
- Error handling
- State management
📱 Mobile-First Design
- Responsive layouts
- Custom widgets library
- Asset management
- Performance optimizations
Prerequisites
Before using this extension, make sure you have:
- Flutter SDK installed and configured
- Mason CLI installed globally:
dart pub global activate mason_cli
- VS Code with Flutter extension
Installation
- Open VS Code
- Go to Extensions (Ctrl+Shift+X)
- Search for "Almusanid Flutter Template Generator"
- Click Install
Usage
Method 1: Command Palette
- Open Command Palette (
Cmd+Shift+P
on macOS, Ctrl+Shift+P
on Windows/Linux)
- Type "Create Flutter Project from Template"
- Enter your project details:
- Project Name: Your app name (e.g.,
my_awesome_app
)
- Package Name: Android package name (e.g.,
com.example.myapp
)
- Description: Project description (optional)
- Select output directory
- Watch your Flutter project being generated!
Method 2: Quick Start
The extension will guide you through the process with user-friendly prompts and validation.
Generated Project Structure
lib/
├── app/
│ ├── app.dart
│ ├── environment/
│ ├── l10n/
│ ├── router/
│ └── theme/
├── core/
│ ├── constants/
│ ├── di/
│ ├── enums/
│ ├── error/
│ ├── extensions/
│ ├── services/
│ ├── shared/
│ ├── themes/
│ ├── utils/
│ └── widgets/
├── features/
│ └── projects/
│ ├── data/
│ ├── domain/
│ └── presentation/
└── main.dart
What's Included
Core Services
- Network Service: HTTP client with Dio
- Permission Handler: Device permissions management
- Notification Service: Push and local notifications
- Language Service: Multi-language support
- Shared Preferences: Local storage
- Download Service: File download management
UI Components
- Custom buttons, text fields, dialogs
- Loading indicators and animations
- Image handling and caching
- Form validation helpers
- Responsive layouts
Architecture Features
- Dependency Injection: Service locator pattern
- Routing: GoRouter configuration
- State Management: Provider pattern
- Error Handling: Global error management
- Localization: i18n support
Configuration
The extension uses Mason CLI templates. You can customize the generated projects by:
- Modifying the Mason template
- Adding custom variables
- Extending the architecture
Requirements
- VS Code 1.96.0 or higher
- Flutter SDK
- Mason CLI
- Dart SDK
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This extension is licensed under the MIT License.
Support
If you encounter any issues or have questions:
- Check the Issues page
- Create a new issue with detailed information
- Include your VS Code version and Flutter version
Changelog
1.0.0
- Initial release
- Flutter project generation with custom templates
- Complete architecture setup
- Service integration
- UI components library
Happy Flutter Development! 🎉