# Webiny API Architect

The hub skill for all API/backend architecture in Webiny.

- Repository: https://github.com/webiny/webiny-js (8051 stars)
- Category: Engineering
- License: see repository
- Last updated: 2026-10-30
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add webiny/webiny-js --skill webiny-api-architect -g -a claude-code -y`
Codex: `npx skills add webiny/webiny-js --skill webiny-api-architect -g -a codex -y`
Cursor: `npx skills add webiny/webiny-js --skill webiny-api-architect -g -a cursor -y`
Gemini CLI: `npx skills add webiny/webiny-js --skill webiny-api-architect -g -a gemini-cli -y`

## Description

The hub skill for all API/backend architecture in Webiny. Covers architecture overview, Services vs UseCases, feature naming and organization, feature structure templates, DI decision tree, anti-patterns, createFeature, createAbstraction, container registration, domain errors, entity patterns, naming conventions, scoping rules, and code conventions. Use this skill for ANY backend API work, it references sub-skills for deep implementation details.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# API Architecture Patterns

## TL;DR

API extensions use `createFeature` to register features into the DI container. Each feature is a vertical slice with abstractions, implementations, and a `feature.ts` registration file. The key abstractions are **Services** (multi-method, singleton) and **UseCases** (single-method orchestrators, transient). Repositories handle persistence via CMS. Features are named by **business capability**, files inside by **technical responsibility**.

## Working Context

This skill applies to both **extension developers** (working in `extensions/`) and **core developers** (working in `packages/`). The architecture patterns are identical, only imports and registration differ.

The rest: https://github.com/webiny/webiny-js/blob/HEAD/skills/user-skills/api/api-architect/SKILL.md
