#api
#sécurité
#performance
#middleware
Implémente un système de limitation de débit robuste pour protéger une API.
Agis comme un expert en architecture API. Je dois implémenter un rate limiting pour mon API [REST/GRAPHQL].
Contraintes :
- Framework : [EXPRESS/FASTAPI/SPRING BOOT]
- Base de données : [REDIS/MEMORY/SQL]
- Limites : [X REQUÊTES PAR MINUTE PAR IP/UTILISATEUR]
Génère le code complet :
1. **Middleware/Interceptor** : Logique de rate limiting.
2. **Configuration** : Limites personnalisables par endpoint.
3. **Réponses** : Headers X-RateLimit-* et code 429.
4. **Tests** : Scénarios de test unitaires.
Explique la stratégie (Token Bucket vs Sliding Window).
#gitops
#kubernetes
#argocd
#flux
#devops
Implémente des workflows GitOps complets avec ArgoCD, Flux ou Jenkins X.
Tu es un expert GitOps et Kubernetes. Je veux implémenter un workflow GitOps pour [TYPE D'APPLICATION].
Workflow GitOps complet:
1. **GitOps Architecture** : Repo structure, branch strategies, PR workflows
2. **CD Tools Setup** : ArgoCD appsets, Flux Kustomizations, Jenkins X pipelines
3. **Kubernetes Manifests** : Helm charts, Kustomize overlays, CRDs
4. **Progressive Delivery** : Canary deployments, blue-green, feature flags
5. **Secrets Management** : Sealed Secrets, Vault integration, SOPS
6. **Multi-Cluster Management** : Cluster bootstrap, fleet management, drift detection
7. **Monitoring** : ArgoCD notifications, GitOps metrics, compliance reporting
8. **Security** : RBAC policies, admission controllers, image scanning
9. **Disaster Recovery** : Backup strategies, cluster restoration, Git recovery
10. **CI Integration** : GitHub Actions, GitLab CI, build pipelines
Fournis les configurations GitOps, les manifests Kubernetes, les pipelines CI/CD et la documentation de récupération.
#graphql
#subscriptions
#real-time
#websockets
#apollo
Implémente des subscriptions GraphQL pour des mises à jour en temps réel.
Tu es un expert GraphQL et temps réel. Je veux ajouter des subscriptions à mon API GraphQL.
Cas d'usage: [DÉCRIRE: CHAT, NOTIFICATIONS, DASHBOARD LIVE...]
Implémentation complète:
1. **Apollo Server Setup** : Configuration avec WebSocket support et subscriptions
2. **Subscription Resolvers** : PubSub pattern pour les événements temps réel
3. **Schema Design** : Types Subscription avec payload filtering et authentification
4. **Client Integration** : Apollo Client Web avec useSubscription hook et error handling
5. **Event Sources** : Integration avec Kafka, Redis, ou WebSocket events
6. **Authorization** : Vérification des permissions au niveau des subscriptions
7. **Performance** : Connection pooling, backpressure handling, et scaling strategies
8. **Testing** : Mock subscriptions et tests d'intégration end-to-end
9. **Monitoring** : Subscription metrics, connection health, et error tracking
10. **Production Deployment** : Nginx configuration, SSL termination, et load balancing
11. **Mobile Support** : React Native et Flutter subscriptions avec offline support
Génère le serveur GraphQL complet, le client React, et la configuration de production.
#ssh
#linux
#devops
#security
Configure le fichier ~/.ssh/config pour gérer plusieurs serveurs/clés.
J'en ai marre de taper `ssh -i ~/.ssh/mykey
[email protected]`.
Montre-moi comment configurer le fichier `~/.ssh/config` pour avoir des alias :
1. Un alias `prod` pour mon serveur production (User, Host, IdentityFile).
2. Un alias `github-perso` pour utiliser une clé spécifique pour Git.
3. Comment se connecter ensuite avec une simple commande.
#git
#debug
#versioning
#productivité
Trouve rapidement le commit responsable d'un bug par dichotomie.
J'ai un bug dans mon code. Je sais qu'il n'était pas là dans la version v1.0, mais il est présent dans la version v2.0.
Guide-moi pas à pas pour utiliser `git bisect` :
1. Démarrer la session.
2. Marquer les bornes (Good/Bad).
3. Tester chaque étape (script ou manuel).
4. Trouver le coupable et nettoyer.
#git
#versioning
#guide
#hotfix
Explique comment appliquer un commit spécifique d'une autre branche.
Je dois récupérer un correctif critique (Commit Hash: `abc1234`) qui est sur la branche `develop`, et l'appliquer sur ma branche `release-v1.0`.
1. Donne la commande exacte `git cherry-pick`.
2. Explique ce qui se passe s'il y a un conflit.
3. Comment annuler l'opération en cours si ça se passe mal ?
#git
#devops
#clean-code
#versioning
Nettoie l'historique des commits avant de merger.
Je veux nettoyer mon historique Git avant de merger ma branche.
J'ai 5 commits de "WIP" ou "Fix typo".
Guide-moi pour faire un `git rebase -i HEAD~5` :
1. Comment lancer la commande.
2. La différence entre `pick`, `squash` et `fixup`.
3. Comment gérer les conflits potentiels pendant le rebase.
#git
#config
#dev
#sécurité
Crée le fichier .gitignore parfait pour votre stack technique.
Génère un fichier `.gitignore` complet pour un projet utilisant les technologies suivantes :
[LISTE TECHNOS, EX: NODE, REACT, MACOS, VSCODE, PYTHON].
N'oublie pas d'exclure :
- Les fichiers d'environnement (.env).
- Les dossiers de dépendances (node_modules, venv).
- Les fichiers systèmes (DS_Store).
- Les fichiers de build (dist, build).
#git
#mémo
#devops
#outils
Crée une antisèche des commandes Git essentielles pour un besoin précis.
Je suis [DÉBUTANT/AVANCÉ] avec Git.
Crée une Cheat Sheet des 10 commandes que je dois absolument connaître pour : [CAS D'USAGE, EX: GÉRER DES BRANCHES, CORRIGER DES ERREURS, TRAVAILLER EN ÉQUIPE].
Pour chaque commande, donne :
- La syntaxe.
- Une explication ultra-courte.
#vuejs
#javascript
#frontend
#component
Crée un composant Vue 3 avec la Composition API et script setup.
Crée un composant Vue.js 3 (Composition API, `<script setup>`) pour : [FONCTIONNALITÉ, EX: UNE MODALE, UN FORMULAIRE DE CONTACT].
Inclus :
- Les props typées (TypeScript).
- Les événements émis (`defineEmits`).
- Le template HTML avec des classes utilitaires (Tailwind si possible).
- La logique réactive (`ref`, `computed`).
#css
#tailwind
#design-system
#frontend
Crée une configuration Tailwind CSS personnalisée (couleurs, fonts).
Génère un fichier `tailwind.config.js` pour une marque aux couleurs : [COULEUR PRIMAIRE, SECONDAIRE].
Inclus :
- Extension du thème (`extend`).
- Configuration des polices (`fontFamily`).
- Ajout de quelques plugins officiels (`forms`, `typography`).
#docker
#devops
#stack
#yaml
Crée une stack Docker complète avec plusieurs services.
Génère un fichier `docker-compose.yml` pour la stack suivante :
- **Frontend** : React (build).
- **Backend** : Node.js (API).
- **Database** : PostgreSQL (avec volume persistant).
- **Cache** : Redis.
Configure les réseaux et les variables d'environnement basiques.
#api
#documentation
#openapi
#swagger
Génère une documentation API complète (OpenAPI/Swagger) à partir du code.
Tu es un expert en documentation d'API et spécifications OpenAPI. Analyse ce code d'API et génère une documentation complète :
[INSÉRER CODE API]
Génère :
1. **Spécification OpenAPI 3.0** complète
2. **Endpoints** : méthodes, paramètres, réponses
3. **Schémas de données** : modèles, validations
4. **Authentification** : types, scopes, sécurité
5. **Exemples** : requêtes/réponses pour chaque endpoint
6. **Error handling** : codes d'erreur et formats
Format : JSON OpenAPI valide avec commentaires explicatifs.
#css
#frontend
#flexbox
#layout
Crée le code CSS Flexbox parfait pour n'importe quelle disposition.
J'ai un conteneur avec [NOMBRE] éléments enfants.
Je veux qu'ils soient disposés : [HORIZONTALEMENT/VERTICALEMENT].
Alignement : [CENTRÉ/ESPACÉ/À GAUCHE].
Comportement si manque de place : [RETOUR À LA LIGNE/RAPTISSENT].
Génère le code CSS pour le parent et les enfants, et explique les propriétés utilisées (`justify-content`, `align-items`, `flex-wrap`).
#git
#devops
#bash
#automatisation
Crée un script bash pour vérifier le code avant le commit.
Crée un fichier `.git/hooks/pre-commit` (Bash script) pour mon projet [LANGAGE, EX: JS/PHP].
Le script doit :
1. Récupérer les fichiers stagés (git diff --cached).
2. Lancer le Linter (ex: eslint ou php -l) uniquement sur ces fichiers.
3. Bloquer le commit (exit 1) si une erreur est détectée.
4. Afficher des messages colorés pour le statut.