srik_cli 0.2.2 copy "srik_cli: ^0.2.2" to clipboard
srik_cli: ^0.2.2 copied to clipboard

Flutter project scaffolder. Choose architecture (Clean, MVVM, Feature-first, Simple), design preset, gradients, and spacing. Generate projects and add features.

srik_cli #

Flutter project scaffolder. Choose your architecture, design preset, gradients, and spacing — generate a runnable app in seconds.

pub package

What it does #

Stop rebuilding the same folder structure for every new Flutter app. srik generates a fully wired project with the architecture and design system you choose.

Install #

dart pub global activate srik_cli

Make sure ~/.pub-cache/bin is on your PATH.

Faster startup (optional) #

Compile to a native binary for instant startup:

dart compile exe bin/srik.dart -o srik

Then move the srik binary onto your PATH.

Use #

srik create my_app
cd my_app
flutter run

The interactive prompt lets you pick everything:

? Description           A new Flutter app
? Organization          com.example
? Architecture          Clean Architecture / MVVM / Feature-first / Simple
? Design preset         Material / Vibrant / Minimal
? Add gradient theme?   y/N
? Spacing scale         Compact / Normal / Spacious
? Brand color (hex)     #6200EE

Non-interactive #

srik create my_app \
  --arch=mvvm \
  --design=vibrant \
  --gradient \
  --spacing=spacious \
  --brand=#FF5733 \
  --org=com.acme \
  --no-interactive

Architectures #

Architecture Structure
Clean core/ + features/<name>/{data,domain,presentation}
MVVM models/, views/, viewmodels/, services/
Feature-first shared/ + features/<name>/ (flat per feature)
Simple screens/, widgets/, models/, services/

All architectures come wired with Riverpod, go_router, and Dio.

Design presets #

Preset Look
Material Google's Material 3 defaults
Vibrant Saturated, modern startup style
Minimal Low contrast, neutral, sharp corners

Every preset generates design tokens (app_colors, app_spacing, app_text_styles, app_radius, app_durations, app_theme) from your brand color. Add --gradient for an app_gradients file with brand-derived gradients.

Spacing scale (compact / normal / spacious) controls the density of the spacing tokens.

Commands #

srik create <name>                # Create new project
srik add feature <name>           # Add a feature module (all architectures)
srik add screen <name> -f <feat>  # Add a screen to a feature (all architectures)
srik doctor                       # Check your environment
srik --version                    # Print version

Adding features #

Keep scaffolding after creation — add adapts to your project's architecture:

cd my_app
srik add feature profile
srik add screen edit_profile --feature profile

Each add feature generates the structure appropriate to the project's architecture and updates srik.yaml.

Roadmap #

v0.2.0 ships architecture choice, design customization, and add support for all four architectures. Coming next:

  • Firebase integration (Auth, Firestore, FCM)
  • State management options (Bloc, Provider, GetX)
  • srik rename — rename a generated project in place

Why not very_good_cli or mason? #

  • very_good_cli forces Bloc + their opinionated structure
  • mason is a generic template engine — you write all bricks yourself
  • srik_cli ships ready-made, architecture-aware templates that boot a working app immediately

License #

MIT — see LICENSE.

Contributing #

Issues and PRs welcome at https://github.com/srisivas/srik_cli

1
likes
145
points
223
downloads

Documentation

API reference

Publisher

verified publisherkalainovainfotech.com

Weekly Downloads

Flutter project scaffolder. Choose architecture (Clean, MVVM, Feature-first, Simple), design preset, gradients, and spacing. Generate projects and add features.

Repository (GitHub)
View/report issues

Topics

#flutter #cli #scaffolding #clean-architecture #riverpod

License

MIT (license)

Dependencies

args, interact, path, yaml

More

Packages that depend on srik_cli