koa typescript
Guidelines for building modern APIs with Koa.js and TypeScript, featuring the onion middleware model and async/await patterns
AImindrally
official
Разработка
Что делает навык
Направляет разработку современных API на базе Koa.js и TypeScript, обеспечивая соблюдение принципов onion-модели middleware и паттернов async/await. Гарантирует типизацию, модульность и безопасность кода через стандартизированные структуры и middleware.
Когда применять
- Создание архитектуры REST API с разделением на контроллеры, валидаторы и сервисы
- Реализация кросс-функциональных middleware (логирование, аутентификация, обработка ошибок)
- Настройка безопасности приложения с использованием koa-helmet, CORS и rate limiting
- Внедрение строгой валидации входных данных с помощью Zod или koa-joi-router
Как работает
- Организовать проект согласно структуре src/routes, src/middleware, src/services и src/models
- Настроить приложение Koa, подключив middleware в правильном порядке (обработка ошибок, безопасность, парсинг тела, роутинг)
- Определить типы для контекста (ParameterizedContext) и состояния приложения (AppState) для строгой типизации
- Реализовать маршрутизацию через koa-router с тонкими контроллерами и применением middleware валидации
- Создать централизованную обработку ошибок с использованием кастомных классов ошибок и безопасного возврата сообщений
- Настроить тестирование интеграции с помощью supertest и app.callback()
Примеры запросов агенту
Создай структуру проекта для API пользователей с использованием Koa и TypeScript, включая роуты и контроллеры
Напиши middleware для аутентификации JWT, сохраняющую пользователя в ctx.state
Реализуй централизованную обработку ошибок, которая не раскрывает внутренние детали в продакшене
Что понадобится
- Среда выполнения Node.js
- Пакеты Koa, TypeScript, koa-router, koa-bodyparser, @koa/cors, koa-helmet
- Переменные окружения (например, JWT_SECRET, NODE_ENV)
Описание составлено по SKILL.md навыка, сверено 05.10.2026.
Как подключить
1Скачать навык
# возьмите папку навыка «koa-typescript» из репозитория:
# https://github.com/mindrally/skills
2Положить папку с
SKILL.md к навыкам ассистента# положите папку навыка туда, где ассистент ищет skills:
cp -r koa-typescript/ ~/.claude/skills/koa-typescript/
Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.