First Steps
1. Install the CLI
bash
go install github.com/amberbyte/flamigo/tools/flamigo@latest2. Scaffold a project
bash
flamigo initThe wizard asks for:
- your Go module path
- optional features to enable
Current optional features include:
authtransport_httptransport_websocket
3. Understand the generated structure
The scaffold gives you a project shaped around:
internal/domainsfor business logicinternal/apifor strategy registrationinternal/adaptersfor transport and external integrationspkgfor app-owned reusable helpers
4. Wire your application at startup
The generated cmd/main.go wires packages through dependency injection during startup.
In practice, the typical flow is:
- initialize core framework pieces
- initialize domain infrastructure
- register API strategies
- initialize adapters
- start transport servers
5. Add your first strategy
The next useful step is usually to add a strategy in internal/api, register it in the app registry, and then expose it through an adapter such as HTTP or WebSocket.
From there, grow domain logic inside internal/domains, not inside the transport layer.