CoOp:Anything
Search any game and see how much of it you can play with friends: every co-op mod, its stage, quality and community rating.
Forces, faiblesses et conseils pour battre n’importe quel champion de League of Legends, à lire pendant l’écran de chargement. Pensé pour les débutants.
Translation pending
GamesJavaScript · CSSGitHub @ValentinFr37OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Comprendre et contrer n'importe quel champion de League of Legends pendant l'écran de chargement.
Le site est pensé pour les débutants : tu tapes le nom du champion adverse sur ton téléphone, et tu as en moins d'une minute :
mf, j4, kog…). Appuie sur Entrée pour ouvrir le premier résultat, / pour revenir dans la recherche et Échap pour quitter une fiche.sitemap.xml, robots.txt et une vraie page 404.vercel.json gère les routes de l'application)Aucune librairie de routage : deux pages ne le justifiaient pas. Un mini-routeur basé sur l'History API se trouve dans src/lib/router.js.
Prérequis : Node.js 20.19 ou plus récent.
npm install
npm run dev # http://localhost:5173
npm test # tests unitaires
npm run lint
npm run build # version de production dans dist/ (avec pré-rendu, voir plus bas)
npm run preview # sert dist/ en local
npm run build enchaîne trois étapes :
vite build : construit l'application pour le navigateur ;vite build --ssr src/entry-server.jsx : construit la même application pour Node ;node scripts/prerender.js : récupère les données Riot du dernier patch, génère avec React le HTML de l'accueil et de chaque champion (dist/champion/Darius.html…), puis écrit sitemap.xml, robots.txt et 404.html.Chaque page contient ses données : dans le navigateur, React reprend la main sur le HTML existant (hydratation) sans rien retélécharger. vercel.json (cleanUrls) sert champion/Darius.html à l'adresse /champion/Darius.
Le build a besoin d'accéder à Data Dragon. S'il échoue (serveurs de Riot indisponibles), Vercel garde la version précédente en ligne. L'adresse du site utilisée dans les balises se règle avec la variable VITE_SITE_URL (par défaut https://lol-en-1-minute.vercel.app).
src/
content/champions/ fiches rédigées (une par champion)
data/nicknames.js surnoms reconnus par la recherche
lib/ddragon.js accès à Data Dragon, cache, mise en forme des données
lib/search.js recherche tolérante (normalisation, surnoms, fautes de frappe)
lib/router.js mini-routeur
lib/seo.js titre, description, balises de partage et données structurées
entry-server.jsx point d'entrée du pré-rendu
scripts/prerender.js génère les pages HTML, le sitemap et robots.txt
pages/ accueil et fiche champion
components/ composants partagés
Base gris neutre, avec l'illustration officielle du champion fondue dans le haut de la page. Les couleurs vives sont réservées à ce qui doit se repérer vite ; toutes sont des variables en haut de src/styles.css :
--key-p … --key-r), identique partout. Dans une fiche, une touche citée seule (« son E », « (Q) ») est automatiquement affichée avec sa couleur ;--role-assassin, --role-mage…) ;--threat) pour ce qu'il faut craindre, vert (--counter) pour comment gagner, or (--gold) pour les actions.Crée src/content/champions/<id>.json, où <id> est l'identifiant Riot du champion en minuscules : darius, missfortune, kogmaw, ou monkeyking pour Wukong. Vite charge automatiquement tous les fichiers de ce dossier.
Inspire-toi de darius.json :
| Champ | Contenu |
|---|---|
plan | Son plan de jeu en une phrase |
aSurveiller | La menace numéro 1 et comment réagir |
genre | Optionnel : "f" pour une championne (« Comment la battre », « Quand elle devient forte ») |
menace | Optionnel : la touche du sort à surveiller ("E"). Sinon, la première touche citée dans aSurveiller est utilisée |
contrer | 3 conseils concrets pour le battre |
forces | 3 forces |
faiblesses | 3 faiblesses |
sorts | Un résumé d'une ligne pour P, Q, W, E et R |
momentFort | Ses fenêtres de puissance face à son adversaire direct (même voie ou jungle contre jungle) : niveaux clés, sort qui change tout quand il est disponible, bon schéma d'échange. Ex. Ahri : bon niveau 1 (auto, W, auto), dangereuse quand son charme (E) est prêt, puis au niveau 6. Pour un champion joué à deux rôles, deux textes : { "voie": "…", "jungle": "…" }, affichés avec « En voie : » et « En jungle : » |
patch | Le patch où la fiche a été vérifiée (ou null) |
Règle d'or : chaque phrase doit pouvoir se lire en quelques secondes.
Le site existe en français (à la racine : /champion/Darius), en anglais (/en/champion/Darius) et en espagnol (/es/champion/Darius). Un drapeau dans l'en-tête mène à la même page dans une autre langue. Chaque version a son titre, sa description et des balises hreflang qui relient les trois pages pour Google ; le sitemap les liste toutes.
src/i18n.js (un bloc par langue).fr_FR, en_US, es_ES).src/content/champions/en/<id>.json et src/content/champions/es/<id>.json. Elles ne contiennent que les textes (plan, aSurveiller, contrer, forces, faiblesses, sorts, momentFort) ; genre, menace, patch et auteur restent dans la fiche française, qui fait référence.Quand tu corriges une fiche française, pense à reporter la correction dans ses deux traductions. Les tests vérifient que chaque traduction existe, garde des phrases courtes et cite exactement les mêmes touches (Q, W, E, R) que la fiche française.
Pour ajouter une langue : une entrée dans LANGS et ses textes dans src/i18n.js, son drapeau dans src/components/LanguageSwitcher.jsx, puis un dossier de fiches traduites.
Les prochaines tâches sont listées dans TODO.md.
LoL en 1 minute n'est pas approuvé par Riot Games et ne reflète pas les opinions de Riot Games ni de quiconque officiellement impliqué dans la production ou la gestion de League of Legends. League of Legends et Riot Games sont des marques commerciales ou des marques déposées de Riot Games, Inc.