thunder_cli 2.2.7 copy "thunder_cli: ^2.2.7" to clipboard
thunder_cli: ^2.2.7 copied to clipboard

This project is a Flutter application scaffolded with GetX and follows the MVC (Model-View-Controller) architecture.

Flutter GetX MVC Project #

This project is a Flutter application scaffolded with GetX and follows the MVC (Model-View-Controller) architecture.

How to Use Thunder CLI #

To streamline the process of creating project structures and modules, we've developed a command-line tool called Thunder CLI. It simplifies the setup of your Flutter project. Below are the available commands and their usage:

Installation #

To install Thunder CLI, run the following command:

dart pub global activate thunder_cli

Commands #

Usage #

To create and initialize a new Flutter project [ Folders and packages ] with Thunder CLI, use the following command:

thunder --i

This command will set up the following components for your project:

  • Local storage
  • Remote storage
  • Awesome Notification
  • FCM
  • Dio Base Client
  • Themes (Dark and Light)
  • Main File
  • Routes and App Pages
  • Components for Application (e.g., animated widgets, snackbar)
  • Constants (e.g., colors, strings)
  • Translations (e.g., localization service, strings)
  • Publish app to GitHub
  • Open the folder in VS code

To create a new module, use the following command:

thunder --m

This command will set up the following components for your module:

  • Binding
  • Controller
  • View
  • Add view in routes and app pages

To create a new model via url (e.g., https://jsonplaceholder.typicode.com/posts), use the following command:

thunder --mo

This command will set up the following components for your model:

  • Model
  • FromJson
  • ToJson

To create module with model, use the following command:

thunder --mm

This command will set up the following components for your module:

  • Binding
  • Controller
  • View
  • Add view in routes and app pages
  • Model
  • FromJson
  • ToJson

To show help, use the following command:

thunder --h

Project Structure #

The project structure is organized as follows:

lib
│
├── app
│   ├── components
│   │   ├── animated_widget
│   │   ├── api_error_widget
│   │   └── custom_snackbar
│   │
│   ├── data
│   │   ├── local
│   │   │   ├── hive
│   │   │   └── my_shared_pref
│   │   ├── models
│   │   └── remote
│   │       ├── api_call_status
│   │       ├── api_exceptions
│   │       ├── base_client
│   │    
│   ├── modules
│   │   ├── login
│   │   │   ├── binding
│   │   │   │   └── login_binding
│   │   │   ├── controller
│   │   │   │   └── login_controller
│   │   │   └── view
│   │   │       └── login_view
│   │   └── ...
│   │
│   ├── ...
│   │
│   └── main
│
├── config
│   ├── theme
│   │   ├── dark_theme_colors
│   │   ├── light_theme_colors
│   │   ├── my_fonts
│   │   ├── my_style
│   │   └── my_theme
│   │
│   └── translations
│       ├── ar_Ar_translation
│       ├── ar_En_translation
│       ├── localization_service
│       └── strings
│
├── utils
│   ├── awesome_notification_helper
│   ├── constants
│   └── fcm_helper
│
└── main


Thunder CLI on pub.dev

Contributing #

Feel free to contribute to this project by opening issues, suggesting new features, or submitting pull requests.

License #

This project is licensed under the MIT License.


4
likes
130
pub points
13%
popularity

Publisher

unverified uploader

This project is a Flutter application scaffolded with GetX and follows the MVC (Model-View-Controller) architecture.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (LICENSE)

Dependencies

args, dio

More

Packages that depend on thunder_cli