Compétences cc-skill-backend-patterns
📦

cc-skill-backend-patterns

Risque faible 🔑 Variables d’environnement

بناء أنظمة خلفية قابلة للتوسع

تطبيق الـ Backend غالباً ما يعاني من بنية معمارية ضعيفة ومشاكل في التوسع وثغرات أمنية. توفر هذه المهارة أنماطاً مثبتة لتصميم الـ API وتحسين قواعد البيانات والتخزين المؤقت والمصادقة والتعامل مع الأخطاء.

Prend en charge: Claude Codex Code(CC)
📊 70 Adéquat
1

Télécharger le ZIP du skill

2

Importer dans Claude

Allez dans Paramètres → Capacités → Skills → Importer un skill

3

Activez et commencez à utiliser

Tester

Utilisation de "cc-skill-backend-patterns". أرني كيفية تصميم RESTful API لمورد المنتجات

Résultat attendu:

GET /api/products - عرض جميع المنتجات
GET /api/products/:id - الحصول على منتج واحد
POST /api/products - إنشاء منتج
PUT /api/products/:id - استبدال منتج
PATCH /api/products/:id - تحديث منتج
DELETE /api/products/:id - حذف منتج

Query params: ?status=active&sort=price&limit=20&offset=0

Utilisation de "cc-skill-backend-patterns". كيف أمنع استعلامات N+1 عند جلب الطلبات مع العملاء؟

Résultat attendu:

بدلاً من:
for (const order of orders) {
order.customer = await getCustomer(order.customerId)
}

استخدم:
const customerIds = orders.map(o => o.customerId)
const customers = await getCustomers(customerIds)
const customerMap = new Map(customers.map(c => [c.id, c]))
orders.forEach(o => o.customer = customerMap.get(o.customerId))

Utilisation de "cc-skill-backend-patterns". أنشئ middleware مصادقة JWT

Résultat attendu:

export function verifyToken(token: string) {
try {
return jwt.verify(token, process.env.JWT_SECRET!)
} catch (error) {
throw new ApiError(401, 'Invalid token')
}
}

export async function requireAuth(request: Request) {
const token = request.headers.get('authorization')?.replace('Bearer ', '')
if (!token) throw new ApiError(401, 'Missing token')
return verifyToken(token)
}

Audit de sécurité

Risque faible
v1 • 2/25/2026

Educational backend development patterns skill. Static analyzer flagged numerous false positives due to misidentification of code comments as shell commands, environment variable access as sensitive data exposure, and URL paths as reconnaissance. True positive finding: JWT secret accessed via process.env - standard secure practice. No malicious behavior detected.

1
Fichiers analysés
590
Lignes analysées
2
résultats
1
Total des audits
Problèmes à risque faible (1)
Environment Variable Access
Code accesses process.env.JWT_SECRET for JWT token verification. This is a standard secure practice for configuration management and does not expose secrets.

Facteurs de risque

🔑 Variables d’environnement (1)

Motifs détectés

False Positive: Shell Command DetectionFalse Positive: Python HTTP Library DetectionFalse Positive: System Reconnaissance DetectionFalse Positive: Weak Cryptographic Algorithm
Audité par: claude

Score de qualité

38
Architecture
90
Maintenabilité
87
Contenu
50
Communauté
88
Sécurité
87
Conformité aux spécifications

Ce que vous pouvez construire

تصميم نقاط نهاية API جديدة

يمكن للمهندسين والمطورين الذين يبنون REST APIs جديدة تطبيق أنماط عناوين URL القائمة على الموارد ومناهج middleware لتصميم API متسق وقابل للصيانة.

تحسين استعلامات قاعدة البيانات البطيئة

يمكن للمطورين الذين يواجهون مشاكل في الأداء تحديد وإصلاح مشاكل استعلام N+1 باستخدام الجلب المجمّع وأنماط تحسين الاستعلام.

تطبيق مصادقة آمنة

يمكن للمطورين الذين يضيفون المصادقة إلى تطبيقاتهم تطبيق التحقق من JWT والتحكم في الوصول القائم على الأدوار باتباع أفضل ممارسات الأمان.

Essayez ces prompts

تصميم هيكل API
صمم هيكل RESTful API لمورد [resource]. تضمّن نقاط النهاية للعرض والحصول حسب ID والإنشاء والتحديث والحذف. اعرض أمثلة معاملات الاستعلام للتصفية والترقيم.
تحسين استعلام قاعدة البيانات
لدي دالة تجلب قائمة من الطلبات ثم تمر في حلقة على كل منها للحصول على تفاصيل العميل. هذا يسبب بطء في الأداء. أرني كيفية إعادة هيكلة هذا باستخدام نمط الجلب المجمّع لتجنب استعلامات N+1.
إضافة مصادقة JWT
أرني كيفية تطبيق التحقق من رمز JWT و middleware requireAuth لحماية مسارات API. تضمّن التعامل مع الأخطاء للرموز غير الصالحة.
تطبيق طبقة التخزين المؤقت
أنشئ تطبيق نمط cache-aside باستخدام Redis لدالة getUser. تضمّن منطق الإصابة/الخطأ في الذاكرة المؤقتة وإلغاء الصلاحية.

Bonnes pratiques

  • افصل الاهتمامات باستخدام طبقات repository و service و controller لكود قابل للصيانة
  • دائماً قم بالتحقق من المدخلات باستخدام مكتبات التحقق من المخطط مثل Zod قبل المعالجة
  • طبق التخزين المؤقت بشكل استراتيجي - خزن العمليات المكلفة ولكن أبطل الصلاحية بشكل صحيح

Éviter

  • لا تستخدم SELECT * لاختيار جميع الأعمدة - حدد الحقول المطلوبة فقط لأداء أفضل
  • تجنب استدعاءات قاعدة البيانات المتداخلة في الحلقات - استخدم الجلب المجمّع بدلاً من ذلك
  • لا تعرض أخطاء قاعدة البيانات الخام للعملاء - استخدم معالجة أخطاء مركزية

Foire aux questions

ما هي اللغات وأطر العمل التي تغطيها هذه المهارة؟
تغطي هذه المهارة أنماط TypeScript لـ Node.js و Express ومسارات API في Next.js. المفاهيم تنطبق على أطر عمل أخرى لكن أمثلة الكود خاصة بهذه التقنيات.
كيف أختار بين PUT و PATCH؟
استخدم PUT لاستبدال المورد كاملاً - يرسل العميل جميع الحقول. استخدم PATCH للتحديثات الجزئية - يرسل العميل الحقول المراد تغييرها فقط.
متى يجب استخدام Redis مقابل التخزين المؤقت في الذاكرة؟
استخدم Redis للتخزين المؤقت الموزّع عبر خوادم متعددة. استخدم التخزين المؤقت في الذاكرة لتطبيقات الخادم الواحد أو عندما لا يكون مشاركة الذاكرة المؤقتة مطلوباً.
كيف أتعامل مع المصادقة في دوال serverless؟
تحقق من رموز JWT عند نقطة الدخول للدالة باستخدام middleware. استخرج معلومات المستخدم من الرمز وارفقها بسياق الطلب.
ما هي الطريقة الموصى بها لهيكلة مشروع backend؟
نظّم حسب الميزة أو الطبقة. النهج الشائع: routes/controllers تتعامل مع HTTP، services تحتوي منطق الأعمال، repositories تتعامل مع الوصول للبيانات. اجعل الكود المتصل معاً.
كيف أطبّق تحديد المعدل بشكل صحيح؟
استخدم معدل توزيع مثل Redis للإنتاج. تتبّع الطلبات حسب IP أو معرف المستخدم. عيّن حدوداً مناسبة بناءً على متطلبات API الخاص بك وراقئ الإساءة.

Détails du développeur

Structure de fichiers

📄 SKILL.md