بنقرة واحدة
portfolio
يحتوي portfolio على 5 من skills المجمعة من achedon12، مع تغطية مهنية على مستوى المستودع وصفحات skill داخل الموقع.
Skills في هذا المستودع
Use when the user asks to add, edit, publish or unpublish a blog article. Couvre les deux chemins (admin form CRUD vs MDX file dans `content/blog/` importé au seed), le contrat de frontmatter, les champs SEO surchargeables, la gestion `published`/`publishedAt`, la TOC auto-extraite des `##`/`###`, le revalidate ISR et l'invalidation de la cache publique.
Use when the user asks to add, rename, or remove a UI string in the public side of the portfolio — anything rendered to a visitor under `[locale]/(public)/**`. Couvre les 2 langues du projet (FR par défaut, EN), les fichiers `src/messages/{fr,en}.json`, le namespace approprié, l'usage server vs client (`getTranslations` vs `useTranslations`), les codes d'erreur Zod, et la règle "ne jamais oublier de mettre à jour les 2 fichiers en même temps".
Use when the user asks to add or modify a Next.js App Router API route under `src/app/api/`. Couvre les conventions du repo: 2 familles de routes (publiques rate-limitées par IP hashée vs admin gardées par `getAdminSession()`), validation Zod avec error codes, runtime nodejs, signatures async pour `params`/`searchParams` (Next 16), `revalidatePath` après mutation, et les pièges sur les transactions + IP hashing.
Pipeline complet de développement intransigeant déclenché par `/pipeline <description de tâche>` (ex. `/pipeline ajoute un endpoint GET /api/blog/[slug]/comments/count qui retourne le nombre de commentaires approuvés`, `/pipeline fix le LikeButton qui crash quand l'API like est down`, `/pipeline refactor uses.ts pour charger la config depuis un MDX au lieu de TS`). Enchaîne analyse → implémentation → tests destructifs → PR GitHub → review automatique → boucle de correction. Aucune sortie sans `tsc --noEmit` propre, smoke tests verts et review VALIDÉ. Usage exclusif quand l'utilisateur invoque `/pipeline`.
Use when the user asks to change the database schema in this project — add/remove a model, add/rename/drop a column, change a default, add an index, modify an enum. Couvre les conventions du repo (Prisma 6 + MySQL 9 + auto-increment Int IDs, migrations versionnées commitées) et les gotchas connues (`migrate dev` interactif sur drop/rename, client Prisma caché par le dev server, grant shadow DB MySQL 9).