Conflict-safe by default
Preview CREATE, UPDATE, SKIP, and CONFLICT operations. Existing differing files are never silently replaced.
OPEN-SOURCE FLUTTER ARCHITECTURE CLI
Archsmith turns architecture decisions into maintainable Flutter projects—deterministically, interactively, and without silently overwriting your work.
$ archsmith feature payments ↵
Architecture clean_feature
State riverpod
CREATE lib/features/payments/data/
CREATE lib/features/payments/domain/
CREATE lib/features/payments/presentation/
CREATE test/features/payments/
✓ Plan complete · 12 files · 0 conflicts
DECIDE ONCE, GENERATE CONSISTENTLY
Archsmith records project decisions in archsmith.yaml. Every future feature, page, model, repository, service, use case, controller, and widget follows the same conventions.
project:
name: "my_flutter_app"
architecture:
type: "clean_feature"
state_management:
type: "riverpod"
router:
type: "go_router"
network:
type: "dio"
generation:
generate_tests: true
format_after_generation: true
BUILT FOR REAL PROJECTS
Preview CREATE, UPDATE, SKIP, and CONFLICT operations. Existing differing files are never silently replaced.
Choose feature-first Clean Architecture, layer-first Clean Architecture, MVVM, or a simple feature-first layout.
Wire Riverpod, Bloc, Provider, or no state library with GoRouter, AutoRoute, Navigator, Dio, or HTTP.
Infer typed models, entities, repositories, use cases, state, providers, and network boundaries from real JSON examples.
Apply cross-platform names, logos, icons, application IDs, Dart defines, and release configurations.
Generate honest, adapter-ready policy and response layers for higher-security mobile applications.
FIT THE TEAM
Start with the structure your project needs today. Archsmith keeps later generation aligned with that decision.
Data, domain, and presentation grouped inside each feature for scalable product teams.
Entities, use cases, repositories, and UI organized by architectural boundary.
Views and view models with predictable separation for UI-focused applications.
A lighter structure that keeps related code together without unnecessary ceremony.
FROM EXAMPLE TO FEATURE
Give Archsmith a real request and response example. It infers nested types and emits the complete architecture-aware feature, including retryable presentation state and shared networking concerns.
archsmith api path/to/payment.json --feature payments --method POST
archsmith api-dir path/to/contracts --recursive
FREE AND OPEN SOURCE
Install globally from pub.dev, then verify your Flutter and Dart toolchain in one command.
dart pub global activate archsmith
archsmith doctor
archsmith create
archsmith feature payments --dry-run
SAFE BY DESIGN
Archsmith is pre-1.0. Generated code is a reviewable starting point, and runtime-protection checks are never presented as security guarantees.
BUILD WITH INTENTION