flutist 1.0.7
flutist: ^1.0.7 copied to clipboard
A Flutter project management framework inspired by Tuist
Changelog #
All notable changes to Flutist will be documented in this file.
1.0.7 - 2025-01-02 #
🐛 Fixed #
flutist initcommand:- Fixed version detection when running
flutist initafterdart pub global activate flutist - Prioritized
global_packageslookup to correctly read installed flutist version - Added package name validation to ensure correct
pubspec.yamlis read - Simplified version detection logic by removing unnecessary directory traversal
- Now correctly adds the installed flutist version to project dependencies instead of fallback version
- Fixed version detection when running
1.0.6 - 2025-01-02 #
🔧 Improved #
flutist initcommand:- Dynamically reads flutist package version from current package's
pubspec.yaml - Uses pub.dev package instead of local path reference
- Automatically reflects version updates when
pubspec.yamlis updated - Changed from hardcoded version to dynamic version reading
- Dynamically reads flutist package version from current package's
1.0.5 - 2025-01-02 #
🎨 Style #
- Applied Dart formatter to example files and codebase
- Formatted
example/flutist/flutist_gen.dart - Formatted
example/package.dart - Applied consistent code formatting across the project
- Formatted
1.0.4 - 2025-01-02 #
🐛 Fixed #
- Fixed
flutist runcommand creatingroot/lib/main.dartfile- Added explicit
-tflag to targetapp/lib/main.dartwhen running Flutter - Automatically detects and removes existing
root/lib/main.dartif found - Prevents Flutter from auto-creating
root/lib/main.dartfile
- Added explicit
1.0.3 - 2025-01-02 #
🐛 Fixed #
- Fixed
flutist runcommand creating unnecessaryroot/lib/main.dartfile- Removed auto-generation logic that created
root/lib/main.dartwhen missing - Flutter workspace automatically finds
app/lib/main.dartwhen running from root directory - Updated README.md documentation to reflect correct behavior
- Removed auto-generation logic that created
1.0.2 - 2025-01-02 #
✨ Added #
- Example directory for pub.dev with complete project structure demonstration
README.mdwith usage instructions and module type explanationsdirectory_structure.mdwith Microfeature Architecture visualization- Example
package.dartandproject.dartconfiguration files - Example
pubspec.yamlwith workspace configuration - Example
flutist_gen.dartshowing generated code structure
🔧 Improved #
flutist initcommand:- Prevent overwriting existing
README.mdfiles - Merge Flutist configuration into existing
pubspec.yamlinstead of overwriting - Automatically add
workspacesection if missing - Automatically add
appmodule to workspace if not exists - Automatically add
flutistdependency with latest version when merging - Fix
app.dartimport path inmain.dart(use relative import instead of package import)
- Prevent overwriting existing
- README.md:
- Add "Core Commands" section highlighting main 4 commands (
init,create,generate,scaffold) - Add "All Commands" table at the top for quick reference
- Improve command visibility with larger headings and bold text
- Add
scaffoldexample to Quick Start section
- Add "Core Commands" section highlighting main 4 commands (
🐛 Fixed #
- Fixed import path in generated
app/lib/main.dart(changed frompackage:app/app.darttoapp.dart) - Fixed dependency getter names in example files (camelCase conversion:
shared_preferences→sharedPreferences,json_annotation→jsonAnnotation) - Suppressed warnings in example directory with custom
analysis_options.yaml
1.0.1 - 2025-01-02 #
🐛 Fixed #
- Fixed README.md banner image loading issue by using GitHub raw URL instead of relative path
1.0.0 - 2025-01-02 #
🎉 Initial Release #
Flutist is a Flutter project management framework inspired by Tuist, providing declarative module structure and dependency management.
✨ Features #
Core Commands
flutist init- Initialize project with workspace supportflutist create- Create modules (simple, feature, library, standard)flutist generate- Sync dependencies with type-safe auto-completionflutist scaffold- Generate code from templates (Tuist-style)flutist graph- Visualize module dependencies (Mermaid, DOT, ASCII)flutist run- Run Flutter appflutist pub- Manage packages
🏗️ Module Types #
- Simple - Single-layer module
- Feature - 3-layer (Domain, Data, Presentation)
- Library - 5-layer (Example, Interface, Implementation, Testing, Tests)
- Standard - 3-layer (Implementation, Tests, Testing)
📦 What's Included #
- Auto-generated
flutist_gen.dartfor type-safe dependencies - Built-in feature template (BLoC pattern)
- Comprehensive
analysis_options.yaml(100+ lint rules) - Automatic workspace registration
- Smart relative path calculation
🐛 Known Issues #
- iOS build requires workspace workaround (Flutter limitation)
- Solution: Use Android/Web for development
📚 Quick Example #
flutist init
flutist create --path features --name login --options library
flutist generate
flutist graph --open
🙏 Credits #
Inspired by Tuist