← Back to list

character-creator-steps
by Gambitnl
Aralia V4
⭐ 0🍴 0📅 Jan 25, 2026
SKILL.md
name: character-creator-steps description: Edit the Character Creator step flow in Aralia. Use when adding, removing, reordering, or conditioning steps; updating reducer transitions; changing sidebar step visibility/completion; or adjusting tests and docs tied to the character creation wizard.
Character Creator Steps
Use this skill to modify the multi-step character creation flow. Focus on the reducer-driven step map, render switch, and sidebar config so navigation, backtracking, and visibility stay consistent.
Entry Points
src/components/CharacterCreator/state/characterCreatorState.tsforCreationStep, reducer transitions,stepDefinitions,GO_BACKresets, and step gating helpers.src/components/CharacterCreator/CharacterCreator.tsxforrenderStep()and step-level handlers.src/components/CharacterCreator/config/sidebarSteps.tsfor sidebar labels, grouping, visibility, and completion summaries.src/components/CharacterCreator/CreationSidebar.tsxif sidebar layout or grouping behavior changes.src/components/CharacterCreator/CharacterCreator.README.mdandsrc/components/CharacterCreator/state/characterCreatorState.README.mdfor state/flow notes.tests/character-creator-flow.spec.tsandsrc/components/CharacterCreator/state/__tests__/characterCreatorReducer.test.tsfor flow coverage.
Workflow
- Map the change: Identify whether the update is add, remove, reorder, or conditional. Note the current step order and dependencies (race, class, ability scores, feats).
- Update the state model:
- Add/remove the
CreationStepenum entry. - Add any new
CharacterCreationStatefields and action types. - Update
determineNextStepAfterRace,getNextStep, and any gating helpers (canOfferFeatAtLevelOne,getFeatStepOrReview,getPreviousStepBeforeFeat) if the path changes.
- Add/remove the
- Wire reducer transitions:
- Add new
casehandlers incharacterCreatorReducer. - Update
stepDefinitionsfor back navigation. - Update
getFieldsToResetOnGoBackto clear the data captured by the step.
- Add new
- Render the step UI:
- Add a
renderStep()branch inCharacterCreator.tsx. - Ensure navigation (
SET_STEP,GO_BACK,NAVIGATE_TO_STEP) keeps the user in valid state.
- Add a
- Keep the sidebar honest:
- Add/update entries in
SIDEBAR_STEPSwith label, group, visibility, and selection summary. - Update
isStepCompletedfor the new step.
- Add/update entries in
- Validate flow:
- Update Playwright flow if the screen order changes.
- Add/adjust reducer tests for step transitions and backtracking.
- Confirm docs still match current behavior.
Change Patterns
Add a new step
- Add enum + reducer action + state field.
- Insert into forward path (e.g., after
AbilityScoresor beforeClassFeatures) and update thestepDefinitionsprevious step mapping. - Add sidebar config and completion logic.
- Add test coverage for forward and back navigation.
Remove a step
- Remove enum, reducer case, and related state fields.
- Remove from
stepDefinitions,SIDEBAR_STEPS, and completion logic. - Collapse adjacent steps to keep the flow continuous.
- Prune tests that depended on the removed step.
Reorder steps
- Update
stepDefinitionsfor back navigation and forward flow helpers. - Audit all
SET_STEPtransitions that assume the old order. - Update sidebar grouping order if needed.
Conditional steps
- Gate visibility in
SIDEBAR_STEPS.isVisible. - Gate the transition in reducer logic (often in
SELECT_*orSET_ABILITY_SCORES). - Ensure
GO_BACKresets the conditional data if the step is skipped or revisited.
Guardrails
- Prefer inline race variant selection in
RaceDetailPaneunless a step must block forward progress (see existing centaur/changeling patterns). - Keep
NAVIGATE_TO_STEPconservative: it must not allow jumping past incomplete data. - If the step affects stats, sync with
useCharacterAssemblyso preview and final assembly match.
Score
Total Score
60/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon