ggen-domain - Domain Logic Layer
This crate contains all domain/business logic for ggen, completely separated from CLI concerns. It provides pure business logic functions that can be used by CLI, web APIs, or other interfaces.
Architecture
- No CLI dependencies: This crate has ZERO dependencies on clap or clap-noun-verb
- Infrastructure dependencies: Uses ggen-core, ggen-ai, ggen-marketplace for operations
- Async by default: Domain functions are async for non-blocking operations
Module Organization
Domain logic is organized by functional area:
ai- AI operations (code analysis, generation)graph- Graph operations (RDF loading, SPARQL queries)marketplace- Marketplace operations (search, install, publish)template- Template operations (generate, lint, render)project- Project operations (create, generate, plan)rdf- RDF metadata operationsaudit- Security auditingci- CI/CD operationsshell- Shell completion generation