Aller au contenu principal
Ihab Khaled
Menu
Tous les projets

Projet open source

NextRanger

Une base d'ingénierie Next.js stricte où les décisions d'architecture sont imposées par l'outillage plutôt que documentées puis oubliées.

Aperçu

NextRanger est le point de départ que j'utilise pour tout travail frontend sérieux. Son postulat est que les conventions qu'une équipe accepte sans pouvoir les imposer finissent par s'éroder, donc chaque règle importante s'exprime comme une règle de lint, un type, ou un test qui échoue plutôt que comme un paragraphe dans un README.

Architecture

Next.js App Router avec des Server Components par défaut, TypeScript strict, et une organisation module-first à dépendances à sens unique : les routes dépendent des modules, les modules du code partagé, le code partagé des wrappers de dépendances, jamais l'inverse. Chaque dépendance tierce a exactement un wrapper propriétaire, de sorte que les montées de version et la gestion des erreurs vivent dans un seul fichier revu.

Ingénierie

Un plugin ESLint personnalisé impose la politique des couches, la propriété des packages, des composants limités au TSX et la couverture de traduction. Vitest et Playwright couvrent les tests unitaires, d'intégration, de bout en bout, d'accessibilité et visuels, avec en plus l'internationalisation et le support RTL, une CSP basée sur un nonce, et des portes CI qui exécutent l'ensemble avant toute fusion.

Rôle
Auteur. Conception du modèle d'architecture, du jeu de règles ESLint personnalisées et des portes de qualité.
Catégorie
Full-stack
Stack
Next.jsReactTypeScriptESLintVitestPlaywrightTailwind CSS
Langage
TypeScript