OPEN-SOURCE FLUTTER ARCHITECTURE CLI

Forge Flutter apps that can grow.

Archsmith turns architecture decisions into maintainable Flutter projects—deterministically, interactively, and without silently overwriting your work.

MITDart 3+Flutter 3.10+

DECIDE ONCE, GENERATE CONSISTENTLY

Your architecture, saved as code.

Archsmith records project decisions in archsmith.yaml. Every future feature, page, model, repository, service, use case, controller, and widget follows the same conventions.

archsmith.yamlproject configuration
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

Scaffolding that respects your codebase.

01

Conflict-safe by default

Preview CREATE, UPDATE, SKIP, and CONFLICT operations. Existing differing files are never silently replaced.

02

Architecture-aware

Choose feature-first Clean Architecture, layer-first Clean Architecture, MVVM, or a simple feature-first layout.

03

Your preferred stack

Wire Riverpod, Bloc, Provider, or no state library with GoRouter, AutoRoute, Navigator, Dio, or HTTP.

04

API automation

Infer typed models, entities, repositories, use cases, state, providers, and network boundaries from real JSON examples.

05

Branding and flavors

Apply cross-platform names, logos, icons, application IDs, Dart defines, and release configurations.

06

Runtime-protection boundary

Generate honest, adapter-ready policy and response layers for higher-security mobile applications.

FIT THE TEAM

Four foundations. One consistent tool.

Start with the structure your project needs today. Archsmith keeps later generation aligned with that decision.

01

Clean · feature first

Data, domain, and presentation grouped inside each feature for scalable product teams.

02

Clean · layer first

Entities, use cases, repositories, and UI organized by architectural boundary.

03

MVVM

Views and view models with predictable separation for UI-focused applications.

04

Simple feature first

A lighter structure that keeps related code together without unnecessary ceremony.

FROM EXAMPLE TO FEATURE

Generate the whole API vertical.

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 Archsmith.

Install globally from pub.dev, then verify your Flutter and Dart toolchain in one command.

01

Activate

dart pub global activate archsmith
02

Check your setup

archsmith doctor
03

Create a project

archsmith create
04

Preview any change

archsmith feature payments --dry-run

SAFE BY DESIGN

Plan first. Write second.

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

Give your next Flutter app a foundation.