https://github.com/ultrawideturbodev/ultra_wide_turbo_bricks
https://github.com/ultrawideturbodev/ultra_wide_turbo_bricks
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/ultrawideturbodev/ultra_wide_turbo_bricks
- Owner: ultrawideturbodev
- License: mit
- Created: 2025-01-16T04:25:39.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-01-18T12:00:20.000Z (5 months ago)
- Last Synced: 2025-04-13T14:56:42.731Z (about 2 months ago)
- Language: Dart
- Size: 43 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Ultra Wide Turbo Bricks 🧱
[](https://github.com/felangel/mason)
A collection of Mason bricks for rapid Flutter development, focusing on Firebase/Firestore integration and clean architecture patterns.
## Available Bricks
- **api**: Generates API layer classes for Firestore interactions
- **brick**: Template for creating new Mason bricks within this collection
- **collection-service**: Generates a service class for handling Firestore collections with built-in GetIt registration
- **core**: Core project setup including base classes and utilities
- **document-service**: Generates a service class for handling Firestore documents with built-in GetIt registration
- **router**: Router configuration and setup
- **routing**: Route generation and navigation utilities
- **scripts**: Development scripts and utilities
- **service**: Base service layer generation
- **view**: View/UI component generation## Installation
```bash
# Activate Mason
dart pub global activate mason_cli# Add bricks locally
mason add --path path/to/brick# Or add from git repository
mason add --git-url https://github.com/your-username/ultra_wide_turbo_bricks --git-path
```## Usage Examples
### Collection Service Generation
```bash
mason make collection-service \
--featureName auth \
--collectionName users \
--collectionObjectName user
```### Document Service Generation
```bash
mason make document-service \
--featureName profile \
--collectionName profiles \
--collectionObjectName profile
```### View Generation
```bash
mason make view \
--name login \
--featureName auth
```## Brick Variables
Each brick requires specific variables:
- `featureName`: Feature module name (e.g., "auth", "profile")
- `collectionName`: Firestore collection name (plural, e.g., "users")
- `collectionObjectName`: DTO class name without suffix (singular, e.g., "user")
- `name`: Component name for views and other generators## Project Structure
Generated code follows a clean architecture pattern with feature-based organization:
```
lib/
├── core/
│ └── enums/
│ └── firestore_collection.dart
└── features/
└── {feature_name}/
├── services/
│ └── {collection_name}_service.dart
└── views/
└── {view_name}_view.dart
```## Contributing
This repository is under active development. Feel free to open issues or submit pull requests.
## Changelog
See [CHANGELOG.md](CHANGELOG.md) for a list of all notable changes.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.