How audioreach/audioreach-creator-backend works
AudioReach Creator API is a NestJS backend for managing .awsp/.acdb files and audio-graph data. The principal read workflow is client REST request → CQRS query dispatch → application handler → persistence query service → SQLite-backed adapter, with the handler mapping read models for the API response. The tree and excerpts support the query path and persistence wiring; the README documents file upload/parsing and broader architecture, but their exact runtime calls are not shown. Planned capabilities are marked as unverified.
Main entry points: query-handler-registry.ts Query dispatch · entity-table-names.ts SQLite entities · typeorm-query-services.ts Query service wiring · main.ts REST API
Components 22
REST presentation
- REST API
packages/api/src/main.ts - Graph operations
packages/api/src/presentation/rest/modules - Authentication
packages/api/src/presentation/rest/modules/authentication - API result DTO
packages/api/src/presentation/rest/common/dto/api-response/api-result.dto.ts
CQRS application
- Query dispatch
packages/core/src/application/orchestration/cqrs/registries/query-handler-registry.ts - Container queries
packages/core/src/application/usecase-designer/container/query/query-containers.handler.ts - Module queries
packages/core/src/application/usecase-designer/spf-module/query/query-spf-modules.handler.ts - Query service ports
packages/core/src/application/ports/persistence/query-services/query-services.ts - Result envelope
packages/core/src/application/shared/result/result.ts
Persistence adapters
- Query service wiring
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/typeorm-query-services.ts - Bulk graph reads
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/bulk-read/typeorm-bulk-read-query-service.ts - Definition reads
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/spf-module-definition/db-spf-module-definition-query-service.ts - Module reads
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/spf-module/db-spf-module-query-service.ts - Edit session data
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/edit-session/edit-actions-query-service.ts - SQLite entities
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/entity-schema/entity-table-names.ts
Product capabilities
- File upload and parsing
packages/core/src/application/file-operations - File download
packages/core/src/application/file-operations/download-file - ACDB diff merge
- Device tuning
- Usecase simulation
- Custom modules
Other components
- API client
Connections 23
- API client → REST API: sends requests
README.md - REST API → Graph operations: exposes endpoints
README.md - REST API → Authentication: exposes endpoints
- Graph operations → Query dispatch: requests queries
- Query dispatch → Container queries: dispatches
packages/core/src/application/orchestration/cqrs/registries/query-handler-registry.ts - Query dispatch → Module queries: dispatches
packages/core/src/application/orchestration/cqrs/registries/query-handler-registry.ts - Container queries → Query service ports: calls query services
packages/core/src/application/usecase-designer/container/query/query-containers.handler.ts - Module queries → Query service ports: calls query services
packages/core/src/application/usecase-designer/spf-module/query/query-spf-modules.handler.ts - Query dispatch → Query service ports: types dependencies
packages/core/src/application/orchestration/cqrs/registries/query-handler-registry.ts - Query service wiring → Bulk graph reads: constructs services
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/typeorm-query-services.ts - Query service wiring → Definition reads: constructs services
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/typeorm-query-services.ts - Query service wiring → Module reads: constructs services
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/typeorm-query-services.ts - Bulk graph reads → SQLite entities: reads entities
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/bulk-read/typeorm-bulk-read-query-service.ts - Definition reads → Edit session data: loads edit actions
packages/infrastructure/persistence/src/persistence-typeorm-sqllite/queries/spf-module-definition/db-spf-module-definition-query-service.ts - Module reads → SQLite entities: queries entities
- File upload and parsing → SQLite entities: stores parsed data
README.md - File download → SQLite entities: reads file data
- Container queries → Result envelope: returns result
packages/core/src/application/usecase-designer/container/query/query-containers.handler.ts - Result envelope → API result DTO: maps response
- API client → ACDB diff merge: planned workflow
README.md - API client → Device tuning: planned workflow
README.md - API client → Usecase simulation: planned workflow
README.md - API client → Custom modules: planned extension
README.md