backend-dev-guidelines
Создание серверных сервисов Node.js с лучшими практиками
متاح أيضًا من: diet103,Dimon94,DojoCodingLabs,sickn33
Несовместимый код серверной части вызывает ошибки и замедляет разработку. Этот навык предоставляет паттерны многоуровневой архитектуры, шаблоны BaseController, паттерны репозитория Prisma, руководства по валидации Zod и интеграцию Sentry для надежных Express микросервисов.
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "backend-dev-guidelines". Создайте маршрут для создания нового пользователя
النتيجة المتوقعة:
- Определение маршрута (routes/userRoutes.ts):
- - Определите маршрут POST /users
- - Примените SSOMiddlewareClient.verifyLoginStatus
- - Делегируйте UserController.createUser
- Метод контроллера (controllers/UserController.ts):
- - Расширьте BaseController
- - Валидируйте ввод с помощью createUserSchema.parse(req.body)
- - Вызовите userService.create(validated)
- - Используйте handleSuccess со статусом 201 при успехе
- - Используйте handleError с захватом Sentry при неудаче
استخدام "backend-dev-guidelines". Добавьте валидацию к существующему API endpoint
النتيجة المتوقعة:
- Создайте схему Zod в validators/userSchemas.ts:
- - Определите форму ввода с выводом типа
- - Добавьте ограничения строк (формат email, мин. длина)
- - Экспортируйте выведенный тип для использования в TypeScript
- Обновите контроллер:
- - Импортируйте и используйте schema.parse(req.body)
- - Обрабатывайте ZodError с отформатированными сообщениями
- - Возвращайте 400 при ошибке валидации
التدقيق الأمني
آمنPure documentation skill containing only markdown files with TypeScript code examples. No executable code, no network calls, no file system access beyond reading its own files, and no environment variable access. Content matches stated purpose of providing backend development guidelines. All 556 static findings are false positives from misidentified template literals and anti-pattern documentation.
عوامل الخطر
⚙️ الأوامر الخارجية (319)
🔑 متغيرات البيئة (53)
📁 الوصول إلى نظام الملفات (44)
درجة الجودة
ماذا يمكنك بناءه
Новый Express endpoint
Создайте чистый маршрут, который делегирует контроллеру, следуя паттерну многоуровневой архитектуры
Добавить валидацию ввода
Реализуйте безопасную с точки зрения типов валидацию с помощью схем Zod и автоматического вывода типов TypeScript
Стандарты код-ревью
Обеспечьте согласованность паттернов в микросервисах с помощью BaseController и паттернов репозитория
جرّب هذه الموجهات
Создайте маршрут для /users, который возвращает список активных пользователей. Используйте паттерн многоуровневой архитектуры с контроллером, который расширяет BaseController.
Создайте схему Zod для формы регистрации пользователя с полями email, name и password. Включите вывод типа TypeScript.
Создайте класс UserRepository, который использует PrismaService для поиска пользователей по email и создания новых пользователей. Включите обработку ошибок.
Покажите, как правильно захватывать ошибки в методе сервиса с Sentry, включая контекст пользователя и теги операций.
أفضل الممارسات
- Сохраняйте маршруты чистыми, делегируя всю логику контроллерам
- Расширяйте BaseController для согласованной обработки ошибок и интеграции Sentry
- Используйте Zod для безопасной с точки зрения типов валидации ввода с автоматическим выводом TypeScript
- Разделяйте ответственность: маршруты обрабатывают маршрутизацию, контроллеры обрабатывают HTTP, сервисы обрабатывают бизнес-логику, репозитории обрабатывают доступ к данным
تجنب
- Бизнес-логика в обработчиках маршрутов - нарушает разделение ответственности
- Прямое использование process.env вместо unifiedConfig
- Отсутствие обработки ошибок или подавление ошибок без захвата Sentry
- Прямые вызовы Prisma в контроллерах или сервисах - используйте репозитории
الأسئلة المتكررة
Работает ли этот навык с Fastify вместо Express?
Какие ORM баз данных поддерживаются?
Могу ли я использовать это с Next.js API routes?
Безопасно ли использовать этот навык для моих данных?
Почему я получаю ошибки типов в сгенерированном коде?
Чем это отличается от сайтов документации?
تفاصيل المطور
المؤلف
BrianDai22الترخيص
MIT
المستودع
https://github.com/BrianDai22/concetrateaiquiz/tree/main/.claude/skills/backend-dev-guidelinesمرجع
main
بنية الملفات