orbital_rapid_cli 1.0.2+1 copy "orbital_rapid_cli: ^1.0.2+1" to clipboard
orbital_rapid_cli: ^1.0.2+1 copied to clipboard

Generate Flutter splash/onboarding/auth flows with Riverpod, BLoC, or GetX

Orbital Rapid CLI Logo

πŸš€ Orbital Rapid CLI #

Orbital Rapid CLI Banner

pub version pub points popularity CI MIT License Stars

Generate production-ready Flutter auth & onboarding flows in seconds.
Supports Riverpod Β· BLoC Β· GetX Β· Firebase Β· REST API Β· Supabase


✨ What Is This? #

Orbital Rapid CLI is a command-line tool that scaffolds complete, production-ready Flutter application flows β€” splash, onboarding, login, registration, forgot password, logout, and account deletion β€” with your chosen state management and backend, in a single command.

Orbital Rapid CLI Architecture

No more copy-pasting boilerplate. No more spending the first week of every project writing the same screens.

orbitalRapid init
? Project name: awesome_app
? Package name: com.mycompany.awesome_app
? State management: Riverpod
? Backend: Firebase
? Screens: Splash, Onboarding, Login, Register, Forgot Password, Account Deletion
? Dark mode support: Yes
? Localization ready: Yes

β Έ Generating project structure...    βœ…
β Έ Generating core utils...           βœ…
β Έ Generating theme system...         βœ…
β Έ Generating splash screen...        βœ…
β Έ Generating onboarding flow...      βœ…
β Έ Generating auth screens...         βœ…
β Έ Generating account screens...      βœ…
β Έ Injecting dependencies...          βœ…
β Έ Writing pubspec.yaml...            βœ…

βœ… 47 files generated in 1.8 seconds
πŸ“ Project ready at: ./awesome_app/
πŸ‘‰ Next: cd awesome_app && flutter pub get && flutter run

πŸ“¦ Installation #

Requires Dart SDK >=3.0.0.

dart pub global activate orbital_rapid_cli

Ensure your Dart pub global bin is in your PATH. Depending on your OS:

Linux / macOS #

# Add to ~/.bashrc or ~/.zshrc
export PATH="$PATH":"$HOME/.pub-cache/bin"

Windows #

PowerShell:

# Add to current session
$env:Path += ";$env:LOCALAPPDATA\Pub\Cache\bin"

# Add permanently
[System.Environment]::SetEnvironmentVariable("Path", $env:Path + ";$env:LOCALAPPDATA\Pub\Cache\bin", "User")

Command Prompt (CMD):

setx PATH "%PATH%;%LOCALAPPDATA%\Pub\Cache\bin"

Verify installation:

orbitalRapid --version
# Orbital Rapid CLI v1.0.0

🎯 Quick Start #

# Navigate to where you want your project created
cd ~/projects

# Run interactive setup
orbitalRapid init

Follow the prompts. Takes about 30 seconds.

Option 2 β€” Inline Flags (No Prompts) #

orbitalRapid init \
  --name=awesome_app \
  --package=com.mycompany.awesome_app \
  --state=riverpod \
  --backend=firebase \
  --screens=all \
  --dark-mode \
  --l10n

Option 3 β€” Config File #

# Use a saved config (great for teams)
orbitalRapid init --config=orbitalRapid.yaml

πŸ–₯️ Commands #

orbitalRapid init #

Scaffold a complete new project with selected flows.

orbitalRapid init [options]

Options:
  --name         Project name (snake_case)
  --package      Package identifier (com.company.app)
  --state        State management: riverpod | bloc | getx
  --backend      Backend: firebase | rest | supabase | none
  --screens      Comma-separated or 'all'
  --dark-mode    Include dark mode support
  --l10n         Include localization scaffolding
  --dry-run      Preview files without writing
  --config       Path to orbitalRapid.yaml config file
  --output       Output directory (default: ./<project-name>)

orbitalRapid add #

Add individual screens to an existing Flutter project.

orbitalRapid add <screen> [options]

# Examples
orbitalRapid add splash
orbitalRapid add login --state=bloc
orbitalRapid add onboarding --pages=4
orbitalRapid add account-deletion --backend=firebase

Screens: splash | onboarding | login | register |
         forgot-password | logout | account-deletion

orbitalRapid upgrade #

Upgrade CLI to the latest version.

orbitalRapid upgrade

orbitalRapid --version #

Print current CLI version.


πŸ—‚οΈ Generated Project Structure #

awesome_app/
β”‚
β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ core/
β”‚   β”‚   β”œβ”€β”€ utils/                    ← ✏️  CUSTOMIZE HERE
β”‚   β”‚   β”‚   β”œβ”€β”€ app_colors.dart
β”‚   β”‚   β”‚   β”œβ”€β”€ app_gradients.dart
β”‚   β”‚   β”‚   β”œβ”€β”€ app_text_styles.dart
β”‚   β”‚   β”‚   β”œβ”€β”€ app_fonts.dart
β”‚   β”‚   β”‚   β”œβ”€β”€ app_dimensions.dart
β”‚   β”‚   β”‚   └── app_strings.dart
β”‚   β”‚   β”‚
β”‚   β”‚   β”œβ”€β”€ theme/
β”‚   β”‚   β”‚   β”œβ”€β”€ app_theme.dart
β”‚   β”‚   β”‚   └── app_dark_theme.dart
β”‚   β”‚   β”‚
β”‚   β”‚   β”œβ”€β”€ constants/
β”‚   β”‚   β”‚   β”œβ”€β”€ app_assets.dart
β”‚   β”‚   β”‚   β”œβ”€β”€ app_routes.dart
β”‚   β”‚   β”‚   └── app_enums.dart
β”‚   β”‚   β”‚
β”‚   β”‚   β”œβ”€β”€ network/                  ← (REST backend only)
β”‚   β”‚   β”‚   β”œβ”€β”€ api_client.dart
β”‚   β”‚   β”‚   β”œβ”€β”€ api_endpoints.dart
β”‚   β”‚   β”‚   └── interceptors/
β”‚   β”‚   β”‚       β”œβ”€β”€ auth_interceptor.dart
β”‚   β”‚   β”‚       └── logging_interceptor.dart
β”‚   β”‚   β”‚
β”‚   β”‚   └── services/
β”‚   β”‚       β”œβ”€β”€ storage_service.dart
β”‚   β”‚       β”œβ”€β”€ navigation_service.dart
β”‚   β”‚       └── auth_service.dart
β”‚   β”‚
β”‚   β”œβ”€β”€ features/
β”‚   β”‚   β”œβ”€β”€ splash/
β”‚   β”‚   β”œβ”€β”€ onboarding/
β”‚   β”‚   β”œβ”€β”€ auth/
β”‚   β”‚   β”‚   β”œβ”€β”€ login/
β”‚   β”‚   β”‚   β”œβ”€β”€ register/
β”‚   β”‚   β”‚   └── forgot_password/
β”‚   β”‚   └── account/
β”‚   β”‚
β”‚   └── main.dart
β”‚
β”œβ”€β”€ assets/
β”‚   β”œβ”€β”€ images/
β”‚   β”œβ”€β”€ icons/
β”‚   β”œβ”€β”€ fonts/
β”‚   └── lottie/
β”‚
β”œβ”€β”€ test/
β”œβ”€β”€ pubspec.yaml
└── orbitalRapid.yaml

🎨 Customization (After Generation) #

Your only job after running the CLI:

File What to change
app_colors.dart Your brand hex values
app_fonts.dart Your font family name
app_text_styles.dart Font sizes and weights
app_dimensions.dart Spacing and radius values
app_strings.dart All text content and copy
app_gradients.dart Gradient colors
app_assets.dart Image and icon paths

Everything else β€” every screen, every widget, every state class β€” reads from these files automatically.


βš™οΈ State Management Support #

Feature Riverpod BLoC GetX
State classes βœ… βœ… βœ…
Events β€” βœ… β€”
Notifiers / Controllers βœ… β€” βœ…
Dependency injection βœ… βœ… βœ…
Test generation βœ… βœ… βœ…

πŸ”Œ Backend Support #

Feature Firebase REST API Supabase None
Login βœ… βœ… βœ… Stub
Register βœ… βœ… βœ… Stub
Logout βœ… βœ… βœ… Stub
Forgot password βœ… βœ… βœ… Stub
Account deletion βœ… βœ… βœ… Stub
Token refresh β€” βœ… βœ… β€”
Social auth βœ… β€” βœ… β€”

🀝 Contributing #

We welcome contributions! See CONTRIBUTING.md for guidelines.

Ways to contribute:

  • πŸ› Report bugs via GitHub Issues
  • πŸ’‘ Request features via Discussions
  • 🧩 Add new screen templates
  • πŸ”Œ Add new backend adapters
  • 🌍 Add localization support
  • βœ… Write tests

πŸ“„ License #

MIT Β© Bony Yamin


Made with ❀️ for the Flutter community
⭐ Star us on GitHub

1
likes
150
points
3
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Generate Flutter splash/onboarding/auth flows with Riverpod, BLoC, or GetX

Repository (GitHub)
View/report issues
Contributing

Topics

#flutter #cli #code-generator #riverpod #bloc

License

MIT (license)

Dependencies

args, collection, interact, mason_logger, mustache_template, path, yaml, yaml_edit

More

Packages that depend on orbital_rapid_cli