feat(data): import level 0-1 spells from reference sources (#50) #52

Merged
Reliodas merged 1 commit from feat/50-spells-data into develop 2026-07-01 11:38:32 +00:00
Owner

Deuxième lot du chantier de données #50 (sorts, niveaux 0 et 1). Chantier de suivi, non fermé.

Ce que fait la PR

Ajoute 84 sorts (mineurs + niveau 1) à data/spells.js, extraits de sources/sorts_dnd_5.5e.html via un extracteur dédié. Chaque entrée mappe :

  • école → thème de couleur existant (évocationevocation, nécromancienecromancie, etc.), niveau, classes ;
  • temps d'incantation, portée, durée ;
  • composantes V/S/M + matériel ; drapeaux rituel et concentration ;
  • blocs de description et montée en niveau (higher).

2 entrées sans contenu (non-OGL, source FR) écartées et recensées dans docs/donnees-a-completer.md. Sorts existants conservés (dédoublonnage par nom).

Vérification (critères d'acceptation)

  • data/spells.js : format identique à l'existant, syntaxe valide (node scripts/smoke-test.js OK).
  • SPELLS_DATA charge sans erreur console ; toutes les écoles résolvent vers un thème valide (couleurs correctes).
  • Rendu carte contrôlé — ex. Aspersion d'acide : bandeau école, composantes V/S, section « Amélioration de sort mineur ».
  • node tests/visual-validation.js 8/8 OK.

Suite

Prochains lots : sorts niveaux 2 à 9 (≈300 restants). Le ticket #50 reste ouvert.

Refs #50

🤖 Generated with Claude Code

Deuxième lot du chantier de données #50 (**sorts, niveaux 0 et 1**). Chantier de suivi, non fermé. ## Ce que fait la PR Ajoute **84 sorts** (mineurs + niveau 1) à `data/spells.js`, extraits de `sources/sorts_dnd_5.5e.html` via un extracteur dédié. Chaque entrée mappe : - **école** → thème de couleur existant (`évocation`→`evocation`, `nécromancie`→`necromancie`, etc.), niveau, classes ; - temps d'**incantation**, **portée**, **durée** ; - **composantes** V/S/M + matériel ; drapeaux **rituel** et **concentration** ; - **blocs** de description et **montée en niveau** (`higher`). **2 entrées sans contenu** (non-OGL, source FR) écartées et recensées dans `docs/donnees-a-completer.md`. Sorts existants conservés (dédoublonnage par nom). ## Vérification (critères d'acceptation) - `data/spells.js` : format identique à l'existant, syntaxe valide (`node scripts/smoke-test.js` OK). - `SPELLS_DATA` charge sans erreur console ; **toutes les écoles** résolvent vers un thème valide (couleurs correctes). - Rendu carte contrôlé — ex. **Aspersion d'acide** : bandeau école, composantes V/S, section « Amélioration de sort mineur ». - `node tests/visual-validation.js` 8/8 OK. ## Suite Prochains lots : **sorts niveaux 2 à 9** (≈300 restants). Le ticket #50 reste **ouvert**. Refs #50 🤖 Generated with [Claude Code](https://claude.com/claude-code)
feat(data): import level 0-1 spells from reference sources (#50)
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
ae0edd8557
Second batch of the data-completion chantier (#50): add 84 spells (cantrips
and level 1) to data/spells.js, extracted from the D&D 5.5e reference pages.
Each entry maps school (to the existing colour themes), level, classes,
casting time / range / duration, components (V/S/M + material), ritual and
concentration flags, description blocks and higher-level upcasting. Two
entries with no available content are skipped and recorded in
docs/donnees-a-completer.md. Existing spells are kept (dedup by name).

Verified: SPELLS_DATA loads with no console errors, all schools resolve to a
valid colour theme, and a sampled card renders correctly (Aspersion d'acide:
school banner, components, upcasting section); smoke and visual validation
pass. Next batches: spell levels 2 to 9.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019fEfJomg2UxRUoR6fduyAC
Reliodas merged commit de881c0f8c into develop 2026-07-01 11:38:32 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: dnd/cards#52
No description provided.