structo 0.1.1
structo: ^0.1.1 copied to clipboard
A simple Dart CLI tool that helps you scaffold Flutter or Dart project structures instantly — including Riverpod-style clean architecture.
Structo #
A brief, one-sentence description of what your command-line tool does.
About #
A more detailed description of your CLI tool. Explain the problem it solves and why it's useful. Talk about its key features and how it works.
Installation #
To use this tool, you need to have the Dart SDK installed on your machine.
Once Dart is installed, you can activate the CLI tool from pub.dev using the following command:
dart pub global activate Structo
This will compile the executable and place it in your system's path, allowing you to run it from anywhere.
Usage #
After installation, you can run the tool directly from your terminal.
[your_executable_name] --option <value> [arguments]
Options #
| Option | Abbreviation | Description | Example |
|---|---|---|---|
--help |
-h |
Show usage information. | [your_executable_name] --help |
--path |
-p |
The target directory path. (Required) | --path ./my-project |
--folders |
-f |
Comma-separated list of folders to create. | --folders "src,lib,test" |
--files |
-i |
Comma-separated list of files to create. | --files "main.dart,README.md" |
Example #
Here's an example of creating a new project structure:
structo --path ./riverpod_app --folders "lib/core,lib/common,lib/features/auth,lib/features/home,lib/features/settings,lib/providers,lib/widgets,assets/images" --files "pubspec.yaml,README.md,lib/main.dart,lib/bootstrap.dart"
# Expected Output:
# 📁 Created folder: ./riverpod_app/lib/core
# 📁 Created folder: ./riverpod_app/lib/common
# 📁 Created folder: ./riverpod_app/lib/features/auth
# 📁 Created folder: ./riverpod_app/lib/features/home
# 📁 Created folder: ./riverpod_app/lib/features/settings
# 📁 Created folder: ./riverpod_app/lib/providers
# 📁 Created folder: ./riverpod_app/lib/widgets
# 📁 Created folder: ./riverpod_app/assets/images
# 📄 Created file: ./riverpod_app/pubspec.yaml
# 📄 Created file: ./riverpod_app/README.md
# 📄 Created file: ./riverpod_app/lib/main.dart
# 📄 Created file: ./riverpod_app/lib/bootstrap.dart
# ✅ Structure created successfully!
lib/
├── core/
│ ├── app.dart
│ ├── router.dart
│ └── constants.dart
├── common/
│ └── theme.dart
├── features/
│ ├── auth/
│ │ ├── presentation/
│ │ ├── data/
│ │ └── domain/
│ ├── home/
│ └── settings/
├── providers/
│ └── global_providers.dart
├── widgets/
│ └── custom_button.dart
├── bootstrap.dart
└── main.dart