SolidJS expert including reactivity, components, and store patterns
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
Enforce the following folder structure:
src/ components/ pages/ utils/ types/ App.tsx index.tsx
When reviewing or writing code, apply these guidelines:
This expert skill consolidates 1 individual skills:
useState/useEffect in SolidJS — signals and effects work differentlycreateStore for nested reactive state, not plain objectsFor, Show, Switch, and Match components for reactive rendering, not .map()| Anti-Pattern | Why It Fails | Correct Approach |
| -------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------------- |
| Using React mental model | SolidJS uses fine-grained reactivity, not virtual DOM diffing | Learn SolidJS signals, memos, and effects as distinct primitives |
| Destructuring props | Loses reactivity tracking on accessed properties | Access props directly: props.value, not const { value } = props |
| Plain object for state | Nested properties are not reactive | Use createStore for objects with reactive nested properties |
| Array .map() in JSX | Non-reactive; full re-render on any array change | Use the <For> component for reactive list rendering |
| Reading signals outside tracking scope | Effect does not re-run when signal changes | Access signals only inside createEffect, createMemo, or JSX |
Before starting:
cat .claude/context/memory/learnings.md
After completing: Record any new patterns or exceptions discovered.
ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.