adonisjs-architecture

Organize AdonisJS v6 API projects into a service-oriented architecture.

2|1|Updated Mar 16, 2026
One-click install
npx skills add https://github.com/omakei/adonisjs-architecture-skill --skill adonisjs-architecture
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: adonisjs-architecture
Source: https://github.com/omakei/adonisjs-architecture-skill/tree/main/adonisjs/skills/adonisjs-architecture
Command: npx skills add https://github.com/omakei/adonisjs-architecture-skill --skill adonisjs-architecture

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Organizes AdonisJS v6 API projects using a service-oriented architecture to promote clean separation of concerns and scalable maintainability.

Core Features & Use Cases

  • Clear layering: controllers are HTTP adapters, services orchestrate, repositories own data access, and domain objects hold pure logic.
  • Event-driven side effects and DTO-driven data flow, with a strong observability setup including OpenTelemetry and Prometheus.
  • Guidance for multi-tenancy, transactions, and DI patterns to enable scalable team workflows.

Quick Start

Organize your AdonisJS v6 project by applying the architecture patterns described here and initialize the recommended project structure.

Frequently Asked Questions about adonisjs-architecture

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure an AdonisJS v6 API project using service-oriented architecture?

Structure your AdonisJS v6 API project by enforcing clear layering where controllers act as HTTP adapters, services orchestrate logic, repositories own data access, and domain objects hold pure logic. This separation enforces explicit boundaries and promotes scalable maintainability.

What is the best way to manage transactions and dependency injection in AdonisJS v6?

Manage transactions and dependency injection in AdonisJS v6 by handling transaction management directly at the service layer and applying specific DI patterns. This approach enables scalable team workflows and ensures robust service orchestration.

How do I set up observability with OpenTelemetry and Prometheus in an AdonisJS app?

Set up observability in your AdonisJS app by integrating robust monitoring with OpenTelemetry and Prometheus. This architecture applies specific patterns to ensure your application's data flow and service orchestration are fully traceable.

How do I implement DTO-driven data flow and event-driven side effects in AdonisJS?

Implement DTO-driven data flow and event-driven side effects in AdonisJS by applying patterns that separate data transfer objects from domain logic. This ensures explicit boundaries and keeps side effects isolated within the service-oriented architecture.

Does this service-oriented architecture support multi-tenancy in AdonisJS v6?

Yes, this service-oriented architecture provides specific guidance for multi-tenancy in AdonisJS v6. It combines multi-tenancy instructions with transaction management and dependency injection patterns to enable scalable team workflows.