# Dated source register

All 38 primary reference pages below were opened and checked on 2026-10-14. They support the technical model; lesson narratives, examples, tasks and diagrams are newly authored for this course. No documentation chapter, source-site screenshot or third-party illustration is reproduced. Links may change after this check.

1. [React quick start](https://react.dev/learn) — Overall terminology and UI scope; original examples used throughout.

2. [React with TypeScript](https://react.dev/learn/typescript) — TSX, typed props, event and hook annotations; lessons 01–06.

3. [Your first component](https://react.dev/learn/your-first-component) — Component names, definitions and composition; 01–02.

4. [Passing props](https://react.dev/learn/passing-props-to-a-component) — Input contracts and composition; 02.

5. [Keeping components pure](https://react.dev/learn/keeping-components-pure) — Pure rendering and avoiding mutations; 02–04.

6. [Render and commit](https://react.dev/learn/render-and-commit) — Render descriptions versus DOM commits; 01–02.

7. [State as a snapshot](https://react.dev/learn/state-as-a-snapshot) — Event/render snapshots; 04.

8. [Queueing state updates](https://react.dev/learn/queueing-a-series-of-state-updates) — Functional updater reasoning; 04.

9. [Choosing state structure](https://react.dev/learn/choosing-the-state-structure) — Derived results and avoiding duplicated records; 04–05.

10. [Rendering lists](https://react.dev/learn/rendering-lists) — Stable record keys; 05.

11. [Preserving and resetting state](https://react.dev/learn/preserving-and-resetting-state) — Position, keys and unmounting; 05, 09.

12. [React input reference](https://react.dev/reference/react-dom/components/input) — Controlled inputs and constraint behavior; 06.

13. [useId](https://react.dev/reference/react/useId) — Unique label/error associations, not list keys; 06.

14. [useRef](https://react.dev/reference/react/useRef) — Targeted DOM focus and nullable refs; 06, 09.

15. [You might not need an effect](https://react.dev/learn/you-might-not-need-an-effect) — Render/event/effect distinction; 04, 07.

16. [Synchronizing with effects](https://react.dev/learn/synchronizing-with-effects) — External relationships and cleanup; 07–08.

17. [useEffect reference](https://react.dev/reference/react/useEffect) — Dependencies, async cleanup and obsolete work; 07–08.

18. [Strict Mode](https://react.dev/reference/react/StrictMode) — Development setup/cleanup and purity checks; 01, 07.

19. [TypeScript everyday types](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html) — Object/union/optional types and assertions; 03.

20. [TypeScript narrowing](https://www.typescriptlang.org/docs/handbook/2/narrowing.html) — Unknown values, guards and discriminated unions; 03, 08.

21. [TypeScript indexed access](https://www.typescriptlang.org/docs/handbook/2/indexed-access-types.html) — Reading the category vocabulary type; 03.

22. [TypeScript utility types](https://www.typescriptlang.org/docs/handbook/utility-types.html) — Partial and Record in error models; 06.

23. [TypeScript strict option](https://www.typescriptlang.org/tsconfig/strict.html) — Strict source contracts; 01.

24. [Vite setup](https://vite.dev/guide/) — Development setup and runtime requirements; 01.

25. [Vite production builds](https://vite.dev/guide/build.html) — Static build entries and assets; 10.

26. [Vite static deployment](https://vite.dev/guide/static-deploy.html) — Preview scope and hosting concepts; 10. No deployment performed.

27. [Vitest getting started](https://vitest.dev/guide/) — Test runner setup; 10.

28. [Vitest environments](https://vitest.dev/guide/environment.html) — Simulated DOM scope; 10.

29. [React Testing Library](https://testing-library.com/docs/react-testing-library/intro/) — Behavior-oriented UI tests; 10.

30. [Testing Library queries](https://testing-library.com/docs/queries/about/) — Role/name queries and get/query/find distinctions; 10.

31. [user-event introduction](https://testing-library.com/docs/user-event/intro/) — Interaction setup and awaiting actions; 10.

32. [React Router declarative installation](https://reactrouter.com/start/declarative/installation) — Focused client routing setup; 09.

33. [React Router declarative routing](https://reactrouter.com/start/declarative/routing) — Routes, dynamic segments and links; 09.

34. [HashRouter reference](https://reactrouter.com/api/declarative-routers/HashRouter) — Fragment-based routing; 09.

35. [MDN using Fetch](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch) — HTTP/body parsing and abort boundaries; 08.

36. [MDN localStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage) — Origin scope, string data and failure behavior; 07.

37. [WAI form notifications](https://www.w3.org/WAI/tutorials/forms/notifications/) — Useful errors, associations and feedback; 06.

38. [Node releases](https://nodejs.org/en/about/previous-releases) — LTS release context and runtime selection; 01.

## Exact dependency evidence

Package versions and engine/peer requirements were read from the official npm registry using npm view on 2026-10-14, then installed and checked against package-lock.json. See [version register](versions.html) and the reproducible machine-readable [registry evidence](qa/dependency-evidence.json). Documentation banners and package registry versions serve different purposes; package pins come from registry evidence, not guessed documentation version labels.

## Source and asset rights

Original SVGs are listed with descriptions in [asset register](assets/register.html). External sources retain their own terms and licenses; this package links to them rather than republishing their documentation. The learner ZIP contains authored source and a lockfile, not node_modules or a bundled third-party distribution. Installed packages carry their own licenses. Their declared license metadata is recorded in LICENSES.md.
