@xmachines/docs 1.0.0-beta.9 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (544) hide show
  1. package/README.md +137 -7
  2. package/api/@xmachines/play/README.md +160 -38
  3. package/api/@xmachines/play/classes/NonNullableError.md +189 -0
  4. package/api/@xmachines/play/classes/PlayError.md +251 -0
  5. package/api/@xmachines/play/functions/assertNonNullable.md +56 -0
  6. package/api/@xmachines/play/type-aliases/PlayEvent.md +6 -6
  7. package/api/@xmachines/play-actor/README.md +141 -160
  8. package/api/@xmachines/play-actor/classes/AbstractActor.md +91 -122
  9. package/api/@xmachines/play-actor/functions/attachRenderErrorHandler.md +40 -0
  10. package/api/@xmachines/play-actor/functions/toAtomState.md +33 -0
  11. package/api/@xmachines/play-actor/functions/typedSpec.md +54 -0
  12. package/api/@xmachines/play-actor/interfaces/BaseActorProviderProps.md +46 -0
  13. package/api/@xmachines/play-actor/interfaces/BaseViewContextValue.md +33 -0
  14. package/api/@xmachines/play-actor/interfaces/PlaySpec.md +28 -0
  15. package/api/@xmachines/play-actor/interfaces/Routable.md +6 -21
  16. package/api/@xmachines/play-actor/interfaces/Viewable.md +12 -6
  17. package/api/@xmachines/play-dom/README.md +384 -0
  18. package/api/@xmachines/play-dom/classes/PlayRenderer.md +115 -0
  19. package/api/@xmachines/play-dom/functions/createPlayUI.md +28 -0
  20. package/api/@xmachines/play-dom/functions/createRenderer.md +44 -0
  21. package/api/@xmachines/play-dom/functions/defineRegistry.md +26 -0
  22. package/api/@xmachines/play-dom/functions/renderSpec.md +67 -0
  23. package/api/@xmachines/play-dom/interfaces/ComponentContext.md +23 -0
  24. package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +34 -0
  25. package/api/@xmachines/play-dom/interfaces/DefineRegistryResult.md +17 -0
  26. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +28 -0
  27. package/api/@xmachines/play-dom/interfaces/EventHandle.md +15 -0
  28. package/api/@xmachines/play-dom/interfaces/MountOptions.md +18 -0
  29. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +30 -0
  30. package/api/@xmachines/play-dom/interfaces/RenderSpecOptions.md +26 -0
  31. package/api/@xmachines/play-dom/interfaces/UIProviderOptions.md +32 -0
  32. package/api/@xmachines/play-dom/type-aliases/ActionFn.md +46 -0
  33. package/api/@xmachines/play-dom/type-aliases/Actions.md +18 -0
  34. package/api/@xmachines/play-dom/type-aliases/BaseComponentProps.md +114 -0
  35. package/api/@xmachines/play-dom/type-aliases/CatalogHasActions.md +25 -0
  36. package/api/@xmachines/play-dom/type-aliases/ComponentFn.md +26 -0
  37. package/api/@xmachines/play-dom/type-aliases/ComponentRegistry.md +15 -0
  38. package/api/@xmachines/play-dom/type-aliases/ConfirmHandler.md +44 -0
  39. package/api/@xmachines/play-dom/type-aliases/DefineRegistryOptions.md +39 -0
  40. package/api/@xmachines/play-dom/type-aliases/DomComponentRenderer.md +20 -0
  41. package/api/@xmachines/play-dom/type-aliases/DomRegistry.md +9 -0
  42. package/api/@xmachines/play-dom/type-aliases/DomSchema.md +9 -0
  43. package/api/@xmachines/play-dom/type-aliases/MountFn.md +27 -0
  44. package/api/@xmachines/play-dom/type-aliases/RenderErrorHandler.md +23 -0
  45. package/api/@xmachines/play-dom/type-aliases/SetState.md +30 -0
  46. package/api/@xmachines/play-dom/variables/schema.md +62 -0
  47. package/api/@xmachines/play-dom-router/README.md +271 -0
  48. package/api/@xmachines/play-dom-router/functions/connectRouter.md +43 -0
  49. package/api/@xmachines/{play-router → play-dom-router}/functions/createBrowserHistory.md +10 -2
  50. package/api/@xmachines/play-dom-router/functions/createRouteMap.md +39 -0
  51. package/api/@xmachines/play-dom-router/functions/createRouter.md +54 -0
  52. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +176 -0
  53. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +69 -0
  54. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +15 -0
  55. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +129 -0
  56. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +68 -0
  57. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +54 -0
  58. package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +121 -0
  59. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +13 -0
  60. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +27 -0
  61. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +104 -0
  62. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +28 -0
  63. package/api/@xmachines/play-react/README.md +185 -334
  64. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +46 -42
  65. package/api/@xmachines/play-react/functions/ActionProvider.md +21 -0
  66. package/api/@xmachines/play-react/functions/JSONUIProvider.md +21 -0
  67. package/api/@xmachines/play-react/functions/Renderer.md +21 -0
  68. package/api/@xmachines/play-react/functions/StateProvider.md +27 -0
  69. package/api/@xmachines/play-react/functions/ValidationProvider.md +21 -0
  70. package/api/@xmachines/play-react/functions/VisibilityProvider.md +21 -0
  71. package/api/@xmachines/play-react/functions/defineRegistry.md +49 -0
  72. package/api/@xmachines/play-react/functions/useActor.md +13 -0
  73. package/api/@xmachines/play-react/functions/useBoundProp.md +45 -0
  74. package/api/@xmachines/play-react/functions/usePlayView.md +32 -0
  75. package/api/@xmachines/play-react/functions/useSignalEffect.md +29 -20
  76. package/api/@xmachines/play-react/interfaces/ActionProviderProps.md +15 -0
  77. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +27 -0
  78. package/api/@xmachines/play-react/interfaces/ComponentContext.md +37 -0
  79. package/api/@xmachines/play-react/interfaces/JSONUIProviderProps.md +22 -0
  80. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +7 -7
  81. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +6 -6
  82. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +26 -0
  83. package/api/@xmachines/play-react/interfaces/RendererProps.md +17 -0
  84. package/api/@xmachines/play-react/interfaces/StateProviderProps.md +16 -0
  85. package/api/@xmachines/play-react/interfaces/ValidationProviderProps.md +14 -0
  86. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +20 -0
  87. package/api/@xmachines/play-react/interfaces/VisibilityProviderProps.md +13 -0
  88. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +11 -0
  89. package/api/@xmachines/play-react/type-aliases/ComponentFn.md +36 -0
  90. package/api/@xmachines/play-react/type-aliases/RenderErrorHandler.md +23 -0
  91. package/api/@xmachines/play-react/variables/ActorProvider.md +33 -0
  92. package/api/@xmachines/play-react/variables/PlayRenderer.md +6 -56
  93. package/api/@xmachines/play-react/variables/PlayUIProvider.md +43 -0
  94. package/api/@xmachines/play-react-router/README.md +130 -114
  95. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +19 -242
  96. package/api/@xmachines/play-react-router/classes/RouteMap.md +48 -36
  97. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +45 -0
  98. package/api/@xmachines/play-react-router/functions/createRouteMap.md +39 -0
  99. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +23 -12
  100. package/api/@xmachines/play-react-router/interfaces/PlayActor.md +68 -0
  101. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +22 -12
  102. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderBaseProps.md +32 -0
  103. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +25 -9
  104. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +13 -0
  105. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +19 -9
  106. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +8 -8
  107. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
  108. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +32 -0
  109. package/api/@xmachines/play-router/README.md +275 -353
  110. package/api/@xmachines/play-router/classes/RouteMap.md +149 -0
  111. package/api/@xmachines/play-router/classes/RouterBridgeBase.md +21 -221
  112. package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +32 -0
  113. package/api/@xmachines/play-router/functions/buildRouteTree.md +12 -2
  114. package/api/@xmachines/play-router/functions/createRouteMap.md +22 -36
  115. package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +46 -0
  116. package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +14 -7
  117. package/api/@xmachines/play-router/functions/extractMachineRoutes.md +10 -46
  118. package/api/@xmachines/play-router/functions/extractQuery.md +22 -0
  119. package/api/@xmachines/play-router/functions/extractRouteParams.md +54 -0
  120. package/api/@xmachines/play-router/functions/findRouteById.md +2 -2
  121. package/api/@xmachines/play-router/functions/findRouteByPath.md +2 -2
  122. package/api/@xmachines/play-router/functions/getNavigableRoutes.md +2 -2
  123. package/api/@xmachines/play-router/functions/getRoutableRoutes.md +2 -2
  124. package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +43 -0
  125. package/api/@xmachines/play-router/functions/isRouteReachable.md +38 -0
  126. package/api/@xmachines/play-router/functions/machineToGraph.md +19 -0
  127. package/api/@xmachines/play-router/functions/routeExists.md +2 -2
  128. package/api/@xmachines/play-router/functions/sanitizePathname.md +40 -0
  129. package/api/@xmachines/play-router/functions/validateRouteFormat.md +10 -9
  130. package/api/@xmachines/play-router/functions/validateStateExists.md +9 -9
  131. package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +13 -0
  132. package/api/@xmachines/play-router/interfaces/LocationLike.md +27 -0
  133. package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +15 -0
  134. package/api/@xmachines/play-router/interfaces/MachineNodeData.md +17 -0
  135. package/api/@xmachines/play-router/interfaces/PlayActor.md +68 -0
  136. package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +22 -12
  137. package/api/@xmachines/play-router/interfaces/ResolvedRoutePath.md +17 -0
  138. package/api/@xmachines/play-router/interfaces/RoutableActor.md +64 -0
  139. package/api/@xmachines/play-router/interfaces/RouteInfo.md +11 -11
  140. package/api/@xmachines/play-router/interfaces/RouteMapOptions.md +13 -0
  141. package/api/@xmachines/play-router/interfaces/RouteMapping.md +27 -0
  142. package/api/@xmachines/play-router/interfaces/RouteMatch.md +12 -0
  143. package/api/@xmachines/play-router/interfaces/RouteNode.md +13 -13
  144. package/api/@xmachines/play-router/interfaces/RouteObject.md +5 -5
  145. package/api/@xmachines/play-router/interfaces/RouteTree.md +8 -7
  146. package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +55 -0
  147. package/api/@xmachines/play-router/interfaces/RouterBridge.md +8 -8
  148. package/api/@xmachines/play-router/interfaces/WindowLike.md +65 -0
  149. package/api/@xmachines/play-router/type-aliases/MachineGraph.md +20 -0
  150. package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +2 -2
  151. package/api/@xmachines/play-signals/README.md +116 -65
  152. package/api/@xmachines/play-signals/functions/watchSignal.md +42 -0
  153. package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +7 -5
  154. package/api/@xmachines/play-signals/interfaces/SignalComputed.md +3 -3
  155. package/api/@xmachines/play-signals/interfaces/SignalOptions.md +7 -5
  156. package/api/@xmachines/play-signals/interfaces/SignalState.md +4 -4
  157. package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +5 -5
  158. package/api/@xmachines/play-signals/namespaces/Signal/README.md +1 -1
  159. package/api/@xmachines/play-signals/namespaces/Signal/classes/Computed.md +7 -7
  160. package/api/@xmachines/play-signals/namespaces/Signal/classes/State.md +8 -8
  161. package/api/@xmachines/play-signals/namespaces/Signal/interfaces/Options.md +7 -7
  162. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/README.md +1 -1
  163. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md +9 -9
  164. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/currentComputed.md +2 -2
  165. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSinks.md +2 -2
  166. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSources.md +2 -2
  167. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSinks.md +2 -2
  168. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSources.md +2 -2
  169. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/untrack.md +2 -2
  170. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/unwatched.md +2 -2
  171. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/watched.md +2 -2
  172. package/api/@xmachines/play-signals/namespaces/Signal/variables/isComputed.md +2 -2
  173. package/api/@xmachines/play-signals/namespaces/Signal/variables/isState.md +2 -2
  174. package/api/@xmachines/play-signals/namespaces/Signal/variables/isWatcher.md +2 -2
  175. package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +2 -2
  176. package/api/@xmachines/play-solid/README.md +196 -234
  177. package/api/@xmachines/play-solid/functions/ActionProvider.md +19 -0
  178. package/api/@xmachines/play-solid/functions/JSONUIProvider.md +21 -0
  179. package/api/@xmachines/play-solid/functions/Renderer.md +21 -0
  180. package/api/@xmachines/play-solid/functions/StateProvider.md +19 -0
  181. package/api/@xmachines/play-solid/functions/ValidationProvider.md +19 -0
  182. package/api/@xmachines/play-solid/functions/VisibilityProvider.md +20 -0
  183. package/api/@xmachines/play-solid/functions/defineRegistry.md +49 -0
  184. package/api/@xmachines/play-solid/functions/useAction.md +24 -0
  185. package/api/@xmachines/play-solid/functions/useActions.md +13 -0
  186. package/api/@xmachines/play-solid/functions/useActor.md +13 -0
  187. package/api/@xmachines/play-solid/functions/useBoundProp.md +45 -0
  188. package/api/@xmachines/play-solid/functions/useFieldValidation.md +29 -0
  189. package/api/@xmachines/play-solid/functions/useIsVisible.md +19 -0
  190. package/api/@xmachines/play-solid/functions/useOptionalValidation.md +13 -0
  191. package/api/@xmachines/play-solid/functions/usePlayView.md +30 -0
  192. package/api/@xmachines/play-solid/functions/useStateBinding.md +25 -0
  193. package/api/@xmachines/play-solid/functions/useStateStore.md +13 -0
  194. package/api/@xmachines/play-solid/functions/useStateValue.md +25 -0
  195. package/api/@xmachines/play-solid/functions/useVisibility.md +13 -0
  196. package/api/@xmachines/play-solid/interfaces/ActionProviderProps.md +12 -0
  197. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +30 -0
  198. package/api/@xmachines/play-solid/interfaces/ComponentContext.md +37 -0
  199. package/api/@xmachines/play-solid/interfaces/DefineRegistryResult.md +15 -0
  200. package/api/@xmachines/play-solid/interfaces/JSONUIProviderProps.md +22 -0
  201. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +26 -0
  202. package/api/@xmachines/play-solid/interfaces/RendererProps.md +17 -0
  203. package/api/@xmachines/play-solid/interfaces/StateProviderProps.md +13 -0
  204. package/api/@xmachines/play-solid/interfaces/ValidationProviderProps.md +11 -0
  205. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +21 -0
  206. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +11 -0
  207. package/api/@xmachines/play-solid/type-aliases/ComponentFn.md +36 -0
  208. package/api/@xmachines/play-solid/type-aliases/ComponentRegistry.md +11 -0
  209. package/api/@xmachines/play-solid/type-aliases/RenderErrorHandler.md +23 -0
  210. package/api/@xmachines/play-solid/type-aliases/SetState.md +21 -0
  211. package/api/@xmachines/play-solid/type-aliases/VisibilityProviderProps.md +9 -0
  212. package/api/@xmachines/play-solid/variables/ActorContext.md +13 -0
  213. package/api/@xmachines/play-solid/variables/ActorProvider.md +27 -0
  214. package/api/@xmachines/play-solid/variables/PlayRenderer.md +6 -62
  215. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +26 -0
  216. package/api/@xmachines/play-solid-router/README.md +151 -560
  217. package/api/@xmachines/play-solid-router/classes/RouteMap.md +31 -32
  218. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +27 -242
  219. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +44 -0
  220. package/api/@xmachines/play-solid-router/functions/createRouteMap.md +18 -11
  221. package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +84 -115
  222. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +68 -0
  223. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +22 -12
  224. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderBaseProps.md +30 -0
  225. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +25 -9
  226. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +13 -0
  227. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +20 -7
  228. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +8 -8
  229. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +34 -0
  230. package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +8 -4
  231. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +22 -19
  232. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +52 -0
  233. package/api/@xmachines/play-svelte/README.md +269 -0
  234. package/api/@xmachines/play-svelte/functions/defineRegistry.md +31 -0
  235. package/api/@xmachines/play-svelte/functions/getActorContext.md +21 -0
  236. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +19 -0
  237. package/api/@xmachines/play-svelte/functions/setActorContext.md +19 -0
  238. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +44 -0
  239. package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +29 -0
  240. package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +29 -0
  241. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +24 -0
  242. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +43 -0
  243. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +24 -0
  244. package/api/@xmachines/play-svelte/type-aliases/ActionFn.md +30 -0
  245. package/api/@xmachines/play-svelte/type-aliases/Actions.md +17 -0
  246. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +11 -0
  247. package/api/@xmachines/play-svelte/type-aliases/ComponentFn.md +18 -0
  248. package/api/@xmachines/play-svelte/type-aliases/JSONUIProviderProps.md +7 -0
  249. package/api/@xmachines/play-svelte/type-aliases/PlayRenderer.md +9 -0
  250. package/api/@xmachines/play-svelte/type-aliases/RenderErrorHandler.md +23 -0
  251. package/api/@xmachines/play-svelte/type-aliases/SetState.md +21 -0
  252. package/api/@xmachines/play-svelte/variables/PlayRenderer.md +9 -0
  253. package/api/@xmachines/play-svelte-spa-router/README.md +199 -0
  254. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +149 -0
  255. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +32 -0
  256. package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +39 -0
  257. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +17 -0
  258. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +129 -0
  259. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +13 -0
  260. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +27 -0
  261. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +104 -0
  262. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +65 -0
  263. package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +9 -0
  264. package/api/@xmachines/play-sveltekit-router/README.md +211 -0
  265. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +149 -0
  266. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +32 -0
  267. package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +39 -0
  268. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +13 -0
  269. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +27 -0
  270. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +129 -0
  271. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +13 -0
  272. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +27 -0
  273. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +104 -0
  274. package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +9 -0
  275. package/api/@xmachines/play-tanstack-react-router/README.md +155 -126
  276. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +48 -36
  277. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +31 -252
  278. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +45 -0
  279. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +22 -36
  280. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +23 -12
  281. package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +28 -0
  282. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +68 -0
  283. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +22 -12
  284. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderBaseProps.md +32 -0
  285. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +25 -9
  286. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +13 -0
  287. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +19 -9
  288. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +6 -6
  289. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +8 -8
  290. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
  291. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +2 -2
  292. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +40 -18
  293. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +34 -0
  294. package/api/@xmachines/play-tanstack-router/README.md +58 -0
  295. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +131 -0
  296. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +57 -0
  297. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +100 -0
  298. package/api/@xmachines/play-tanstack-solid-router/README.md +215 -175
  299. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +31 -32
  300. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +121 -0
  301. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +44 -0
  302. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +18 -11
  303. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +68 -0
  304. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +22 -12
  305. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderBaseProps.md +31 -0
  306. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +23 -9
  307. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +13 -0
  308. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +14 -10
  309. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +8 -8
  310. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
  311. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +8 -4
  312. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +3 -3
  313. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +40 -18
  314. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +33 -0
  315. package/api/@xmachines/play-vue/README.md +192 -210
  316. package/api/@xmachines/play-vue/functions/defineRegistry.md +32 -0
  317. package/api/@xmachines/play-vue/functions/getPlayViewContext.md +28 -0
  318. package/api/@xmachines/play-vue/functions/useActor.md +13 -0
  319. package/api/@xmachines/play-vue/functions/useBoundProp.md +45 -0
  320. package/api/@xmachines/play-vue/interfaces/ActionProviderProps.md +12 -0
  321. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +25 -0
  322. package/api/@xmachines/play-vue/interfaces/ComponentContext.md +37 -0
  323. package/api/@xmachines/play-vue/interfaces/DefineRegistryResult.md +15 -0
  324. package/api/@xmachines/play-vue/interfaces/JSONUIProviderProps.md +21 -0
  325. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +24 -0
  326. package/api/@xmachines/play-vue/interfaces/RendererProps.md +17 -0
  327. package/api/@xmachines/play-vue/interfaces/StateProviderProps.md +15 -0
  328. package/api/@xmachines/play-vue/interfaces/ValidationProviderProps.md +11 -0
  329. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +21 -0
  330. package/api/@xmachines/play-vue/interfaces/VisibilityProviderProps.md +5 -0
  331. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +11 -0
  332. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +16 -0
  333. package/api/@xmachines/play-vue/type-aliases/ComponentFn.md +35 -0
  334. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +15 -0
  335. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +22 -0
  336. package/api/@xmachines/play-vue/type-aliases/RenderErrorHandler.md +23 -0
  337. package/api/@xmachines/play-vue/variables/ActionProvider.md +64 -0
  338. package/api/@xmachines/play-vue/variables/JSONUIProvider.md +105 -0
  339. package/api/@xmachines/play-vue/variables/PlayRenderer.md +2 -2
  340. package/api/@xmachines/play-vue/variables/Renderer.md +88 -0
  341. package/api/@xmachines/play-vue/variables/StateProvider.md +79 -0
  342. package/api/@xmachines/play-vue/variables/ValidationProvider.md +55 -0
  343. package/api/@xmachines/play-vue/variables/VisibilityProvider.md +40 -0
  344. package/api/@xmachines/play-vue-router/README.md +173 -487
  345. package/api/@xmachines/play-vue-router/classes/RouteMap.md +56 -116
  346. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +23 -271
  347. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +26 -6
  348. package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +68 -0
  349. package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +22 -12
  350. package/api/@xmachines/play-vue-router/interfaces/RouteMapOptions.md +13 -0
  351. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +20 -8
  352. package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +8 -8
  353. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +8 -4
  354. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +12 -6
  355. package/api/@xmachines/play-xstate/README.md +178 -347
  356. package/api/@xmachines/play-xstate/classes/PlayerActor.md +161 -191
  357. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +31 -20
  358. package/api/@xmachines/play-xstate/functions/composeGuards.md +2 -2
  359. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +2 -2
  360. package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +38 -0
  361. package/api/@xmachines/play-xstate/functions/definePlayer.md +14 -63
  362. package/api/@xmachines/play-xstate/functions/deriveRoute.md +3 -3
  363. package/api/@xmachines/play-xstate/functions/eventMatches.md +2 -2
  364. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +3 -3
  365. package/api/@xmachines/play-xstate/functions/hasContext.md +2 -2
  366. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +2 -2
  367. package/api/@xmachines/play-xstate/functions/negateGuard.md +2 -2
  368. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +10 -14
  369. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +22 -0
  370. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +12 -13
  371. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +15 -13
  372. package/api/@xmachines/play-xstate/interfaces/RouteObject.md +17 -0
  373. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +2 -2
  374. package/api/@xmachines/play-xstate/type-aliases/Guard.md +2 -2
  375. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +3 -3
  376. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +10 -9
  377. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +15 -5
  378. package/api/@xmachines/play-xstate/type-aliases/RouteMetadata.md +9 -0
  379. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +22 -6
  380. package/api/@xmachines/shared/README.md +95 -295
  381. package/api/@xmachines/shared/vite-aliases/README.md +11 -0
  382. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +38 -0
  383. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +27 -0
  384. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +30 -0
  385. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +42 -0
  386. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +33 -0
  387. package/api/@xmachines/shared/vitest/README.md +12 -0
  388. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +42 -0
  389. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +34 -0
  390. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +16 -0
  391. package/api/README.md +6 -7
  392. package/api/llms.txt +72 -23
  393. package/contributing/README.md +10 -0
  394. package/contributing/architecture.md +599 -0
  395. package/contributing/configuration.md +368 -0
  396. package/contributing/deployment.md +312 -0
  397. package/contributing/development.md +464 -0
  398. package/contributing/testing.md +453 -0
  399. package/examples/@xmachines/play-dom-demo/README.md +181 -0
  400. package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +24 -0
  401. package/examples/@xmachines/play-dom-demo/functions/initShell.md +24 -0
  402. package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +9 -0
  403. package/examples/@xmachines/play-dom-demo/variables/About.md +12 -0
  404. package/examples/@xmachines/play-dom-demo/variables/Contact.md +12 -0
  405. package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +13 -0
  406. package/examples/@xmachines/play-dom-demo/variables/Home.md +13 -0
  407. package/examples/@xmachines/play-dom-demo/variables/Login.md +13 -0
  408. package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +16 -0
  409. package/examples/@xmachines/play-dom-demo/variables/Navigation.md +13 -0
  410. package/examples/@xmachines/play-dom-demo/variables/Overview.md +13 -0
  411. package/examples/@xmachines/play-dom-demo/variables/Profile.md +13 -0
  412. package/examples/@xmachines/play-dom-demo/variables/Settings.md +13 -0
  413. package/examples/@xmachines/play-dom-demo/variables/Stats.md +13 -0
  414. package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +172 -0
  415. package/examples/@xmachines/play-dom-router-demo/README.md +145 -0
  416. package/examples/@xmachines/play-react-demo/README.md +187 -0
  417. package/examples/@xmachines/play-react-demo/functions/App.md +13 -0
  418. package/examples/@xmachines/play-react-demo/functions/DebugPanel.md +20 -0
  419. package/examples/@xmachines/play-react-demo/functions/HeaderNav.md +20 -0
  420. package/examples/@xmachines/play-react-demo/functions/Shell.md +22 -0
  421. package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +9 -0
  422. package/examples/@xmachines/play-react-demo/variables/About.md +14 -0
  423. package/examples/@xmachines/play-react-demo/variables/Contact.md +14 -0
  424. package/examples/@xmachines/play-react-demo/variables/Dashboard.md +15 -0
  425. package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +15 -0
  426. package/examples/@xmachines/play-react-demo/variables/Home.md +14 -0
  427. package/examples/@xmachines/play-react-demo/variables/Login.md +16 -0
  428. package/examples/@xmachines/play-react-demo/variables/NavBar.md +16 -0
  429. package/examples/@xmachines/play-react-demo/variables/NavBarView.md +15 -0
  430. package/examples/@xmachines/play-react-demo/variables/Navigation.md +14 -0
  431. package/examples/@xmachines/play-react-demo/variables/Overview.md +14 -0
  432. package/examples/@xmachines/play-react-demo/variables/Profile.md +14 -0
  433. package/examples/@xmachines/play-react-demo/variables/Settings.md +14 -0
  434. package/examples/@xmachines/play-react-demo/variables/Shell.md +18 -0
  435. package/examples/@xmachines/play-react-demo/variables/Stats.md +14 -0
  436. package/examples/@xmachines/play-react-demo/variables/authCatalog.md +172 -0
  437. package/examples/@xmachines/play-react-router-demo/README.md +151 -0
  438. package/examples/@xmachines/play-solid-demo/README.md +187 -0
  439. package/examples/@xmachines/play-solid-demo/functions/App.md +13 -0
  440. package/examples/@xmachines/play-solid-demo/functions/DebugPanel.md +20 -0
  441. package/examples/@xmachines/play-solid-demo/functions/HeaderNav.md +20 -0
  442. package/examples/@xmachines/play-solid-demo/functions/Shell.md +22 -0
  443. package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +9 -0
  444. package/examples/@xmachines/play-solid-demo/variables/About.md +9 -0
  445. package/examples/@xmachines/play-solid-demo/variables/Contact.md +9 -0
  446. package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +9 -0
  447. package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +15 -0
  448. package/examples/@xmachines/play-solid-demo/variables/Home.md +9 -0
  449. package/examples/@xmachines/play-solid-demo/variables/Login.md +9 -0
  450. package/examples/@xmachines/play-solid-demo/variables/NavBar.md +11 -0
  451. package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +15 -0
  452. package/examples/@xmachines/play-solid-demo/variables/Navigation.md +9 -0
  453. package/examples/@xmachines/play-solid-demo/variables/Overview.md +9 -0
  454. package/examples/@xmachines/play-solid-demo/variables/Profile.md +9 -0
  455. package/examples/@xmachines/play-solid-demo/variables/Settings.md +9 -0
  456. package/examples/@xmachines/play-solid-demo/variables/Shell.md +17 -0
  457. package/examples/@xmachines/play-solid-demo/variables/Stats.md +9 -0
  458. package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +172 -0
  459. package/examples/@xmachines/play-solid-router-demo/README.md +137 -0
  460. package/examples/@xmachines/play-svelte-demo/README.md +143 -0
  461. package/examples/@xmachines/play-svelte-demo/type-aliases/App.md +9 -0
  462. package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +9 -0
  463. package/examples/@xmachines/play-svelte-demo/variables/App.md +9 -0
  464. package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +172 -0
  465. package/examples/@xmachines/play-svelte-spa-router-demo/README.md +129 -0
  466. package/examples/@xmachines/play-sveltekit-router-demo/README.md +133 -0
  467. package/examples/@xmachines/play-tanstack-react-router-demo/README.md +156 -0
  468. package/examples/@xmachines/play-tanstack-solid-router-demo/README.md +139 -0
  469. package/examples/@xmachines/play-vue-demo/README.md +183 -0
  470. package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +9 -0
  471. package/examples/@xmachines/play-vue-demo/variables/App.md +9 -0
  472. package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +172 -0
  473. package/examples/@xmachines/play-vue-router-demo/README.md +139 -0
  474. package/examples/README.md +78 -30
  475. package/examples/basic-state-machine.md +75 -31
  476. package/examples/form-validation.md +261 -118
  477. package/examples/multi-router-integration.md +314 -194
  478. package/examples/routing-patterns.md +230 -189
  479. package/examples/traffic-light.md +114 -65
  480. package/guides/README.md +9 -21
  481. package/guides/actor-model.md +180 -0
  482. package/guides/getting-started.md +619 -137
  483. package/guides/signals.md +166 -0
  484. package/guides/state-machines.md +284 -0
  485. package/package.json +18 -7
  486. package/rfc/broker.md +100 -0
  487. package/rfc/browser.md +44 -0
  488. package/rfc/cli.md +118 -0
  489. package/rfc/git.md +61 -0
  490. package/rfc/mcp.md +43 -0
  491. package/rfc/node.md +36 -0
  492. package/rfc/play.md +472 -0
  493. package/rfc/rest.md +102 -0
  494. package/rfc/run.md +159 -0
  495. package/rfc/streams.md +168 -0
  496. package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +0 -17
  497. package/api/@xmachines/play-catalog/README.md +0 -331
  498. package/api/@xmachines/play-catalog/functions/defineCatalog.md +0 -98
  499. package/api/@xmachines/play-catalog/functions/defineComponents.md +0 -134
  500. package/api/@xmachines/play-catalog/type-aliases/Catalog.md +0 -48
  501. package/api/@xmachines/play-catalog/type-aliases/ComponentsFor.md +0 -20
  502. package/api/@xmachines/play-catalog/type-aliases/InferComponentProps.md +0 -65
  503. package/api/@xmachines/play-catalog/type-aliases/NoExtraKeys.md +0 -17
  504. package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +0 -15
  505. package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +0 -19
  506. package/api/@xmachines/play-react-router-demo/README.md +0 -137
  507. package/api/@xmachines/play-router/classes/BaseRouteMap.md +0 -142
  508. package/api/@xmachines/play-router/functions/connectRouter.md +0 -67
  509. package/api/@xmachines/play-router/functions/crawlMachine.md +0 -92
  510. package/api/@xmachines/play-router/functions/createRouter.md +0 -76
  511. package/api/@xmachines/play-router/functions/extractRoute.md +0 -45
  512. package/api/@xmachines/play-router/interfaces/BaseRouteMapping.md +0 -27
  513. package/api/@xmachines/play-router/interfaces/BrowserHistory.md +0 -172
  514. package/api/@xmachines/play-router/interfaces/BrowserWindow.md +0 -69
  515. package/api/@xmachines/play-router/interfaces/ConnectRouterOptions.md +0 -13
  516. package/api/@xmachines/play-router/interfaces/RouteMap.md +0 -56
  517. package/api/@xmachines/play-router/interfaces/StateVisit.md +0 -15
  518. package/api/@xmachines/play-router/interfaces/VanillaRouter.md +0 -28
  519. package/api/@xmachines/play-router-demo/README.md +0 -137
  520. package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +0 -15
  521. package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +0 -19
  522. package/api/@xmachines/play-solid-router-demo/README.md +0 -127
  523. package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +0 -19
  524. package/api/@xmachines/play-tanstack-react-router/functions/extractParams.md +0 -38
  525. package/api/@xmachines/play-tanstack-react-router/functions/extractQueryParams.md +0 -33
  526. package/api/@xmachines/play-tanstack-react-router/variables/extractMachineRoutes.md +0 -64
  527. package/api/@xmachines/play-tanstack-react-router-demo/README.md +0 -126
  528. package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +0 -343
  529. package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +0 -19
  530. package/api/@xmachines/play-tanstack-solid-router-demo/README.md +0 -126
  531. package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +0 -14
  532. package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +0 -201
  533. package/api/@xmachines/play-vue-router-demo/README.md +0 -133
  534. package/api/@xmachines/play-xstate/functions/mergeViewProps.md +0 -26
  535. package/api/@xmachines/play-xstate/functions/stateMatches.md +0 -25
  536. package/api/@xmachines/play-xstate/functions/validateComponentBinding.md +0 -39
  537. package/api/@xmachines/play-xstate/functions/validateViewProps.md +0 -80
  538. package/api/@xmachines/play-xstate/interfaces/CatalogEntry.md +0 -16
  539. package/api/@xmachines/play-xstate/type-aliases/Catalog.md +0 -21
  540. package/api/@xmachines/play-xstate/type-aliases/ValidationResult.md +0 -17
  541. package/api/@xmachines/play-xstate/type-aliases/ViewMergeContext.md +0 -35
  542. package/api/@xmachines/shared/functions/defineXmVitestConfig.md +0 -29
  543. package/api/@xmachines/shared/functions/xmAliases.md +0 -24
  544. package/guides/installation.md +0 -323
@@ -0,0 +1,137 @@
1
+ [Examples](../../README.md) / @xmachines/play-solid-router-demo
2
+
3
+ <!-- generated-by: gsd-doc-writer -->
4
+
5
+ # @xmachines/play-solid-router-demo
6
+
7
+ SolidJS Router adapter demonstration with authentication flow using the XMachines Play architecture and provider-based router integration.
8
+
9
+ ## What This Demonstrates
10
+
11
+ - Shared auth machine reused without framework-specific business logic
12
+ - `PlayRouterProvider` renderer-based integration with Solid Router
13
+ - Shell-driven rendering via `PlayRenderer` with actor-authoritative navigation
14
+ - Canonical TC39 Signals lifecycle integration with Solid's fine-grained reactivity
15
+ - Non-browser invariant tests plus browser E2E coverage
16
+
17
+ ## Running the Demo
18
+
19
+ From the repository root:
20
+
21
+ ```bash
22
+ pnpm install
23
+ pnpm --filter @xmachines/play-solid-router-demo run dev
24
+ ```
25
+
26
+ Then open `http://localhost:3007`.
27
+
28
+ ## Step-by-Step Code Flow
29
+
30
+ Use this order to understand the implementation:
31
+
32
+ 1. `src/main.tsx` bootstraps the demo and mounts `<App />` onto `#app`.
33
+ 2. `src/runtime.ts` sets up the actor, registry, routes, and route map — all shared module-level singletons.
34
+ 3. `src/App.tsx` wires Solid Router routes and the `PlayRouterProvider` using the runtime exports.
35
+ 4. A `routeMap` is created by calling `createRouteMap(authMachine)` in `src/runtime.ts`.
36
+ 5. `PlayRouterProvider` forwards navigation intent from `@solidjs/router` to the actor, and reflects actor-approved routes back to the URL.
37
+ 6. `Shell` (from `@xmachines/play-solid-demo`) renders actor-projected views (`PlayRenderer`) and provides the shared UI shell.
38
+ 7. `test/library-pattern.test.ts` and `test/browser/` verify invariants and runtime routing behavior.
39
+
40
+ ```tsx
41
+ // src/main.tsx (shape)
42
+ render(() => <App />, document.getElementById("app")!);
43
+ ```
44
+
45
+ ```tsx
46
+ // src/runtime.ts (shape)
47
+ const createPlayer = definePlayer({ machine: authMachine });
48
+ export const actor = createPlayer();
49
+ actor.start();
50
+
51
+ export const routeMap = createRouteMap(authMachine);
52
+ ```
53
+
54
+ ```tsx
55
+ // src/App.tsx (shape)
56
+ const Layout: ParentComponent = () => {
57
+ const navigate = useNavigate();
58
+ const location = useLocation();
59
+ const params = useParams();
60
+
61
+ return (
62
+ <PlayRouterProvider
63
+ actor={actor}
64
+ routeMap={routeMap}
65
+ router={{ navigate, location, params }}
66
+ renderer={(currentActor, currentRouter) => (
67
+ <Shell
68
+ actor={currentActor}
69
+ router={currentRouter}
70
+ registryResult={registryResult}
71
+ />
72
+ )}
73
+ />
74
+ );
75
+ };
76
+ ```
77
+
78
+ ## Key Files
79
+
80
+ - `src/runtime.ts` - actor lifecycle, registry, route extraction, and route map creation
81
+ - `src/App.tsx` - Solid Router wiring, `PlayRouterProvider` integration, and renderer composition
82
+ - `src/main.tsx` - Vite bootstrap that mounts `<App />` via Solid's `render`
83
+ - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
84
+ - `test/browser/shared-demo.browser.test.ts` - browser startup and full auth flow coverage
85
+
86
+ ## State Machine & Architecture Details
87
+
88
+ The demo utilizes XMachines architectural invariants:
89
+
90
+ 1. **Actor Authority:** When a user navigates to a protected route, the Solid Router updates the URL. The `PlayRouterProvider` intercepts this, translates it to a `play.route` event, and sends it to the actor. The actor evaluates guards (e.g., is the user logged in?) and transitions to the appropriate state.
91
+ 2. **Passive Infrastructure:** Solid components hold no business state. They observe `actor.currentView` to know what to render, and `actor.currentRoute` to reflect the active path.
92
+ 3. **Signal-Only Reactivity:** Instead of React-like re-renders, Solid uses `createEffect` internally within the `RouterBridge` to react precisely when signals update.
93
+
94
+ ## Watcher Lifecycle and Cleanup Contract
95
+
96
+ This demo follows the canonical watcher lifecycle:
97
+
98
+ 1. `notify`
99
+ 2. `queueMicrotask`
100
+ 3. `getPending()`
101
+ 4. Read actor signals and update Solid-local render triggers
102
+ 5. Re-arm with `watch()`/`watch(...signals)`
103
+
104
+ Watcher notifications are one-shot. Cleanup is explicit and lifecycle-bound: Solid teardown uses `onCleanup`, and provider/bridge teardown must call `disconnect`/`unwatch` paths rather than relying on GC-only cleanup. This is crucial to prevent memory leaks during component unmounting.
105
+
106
+ ## Adapter Boundaries
107
+
108
+ Solid Router integration remains passive infrastructure. `RouterBridgeBase` stays the shared policy point; the Solid adapter only implements framework port behavior (calling `navigate()` and tracking `location.pathname`).
109
+
110
+ ## Available Scripts
111
+
112
+ These commands are defined in `package.json`:
113
+
114
+ | Command | Description |
115
+ | ------------------------------------------------------------------ | ---------------------------------------------- |
116
+ | `pnpm --filter @xmachines/play-solid-router-demo run dev` | Start Vite dev server (http://localhost:3007/) |
117
+ | `pnpm --filter @xmachines/play-solid-router-demo run build` | Build production bundle |
118
+ | `pnpm --filter @xmachines/play-solid-router-demo run preview` | Preview built bundle |
119
+ | `pnpm --filter @xmachines/play-solid-router-demo run test` | Run Vitest test suite |
120
+ | `pnpm --filter @xmachines/play-solid-router-demo run test:browser` | Run browser-focused Vitest suite |
121
+
122
+ ## Verification
123
+
124
+ Use these checks to validate README claims against the current demo implementation:
125
+
126
+ ```bash
127
+ pnpm --filter @xmachines/play-solid-router-demo run test
128
+ pnpm --filter @xmachines/play-solid-router-demo run test:browser
129
+ ```
130
+
131
+ Expected result: library-pattern invariant tests and the browser shared-demo suite both pass, confirming login/logout transitions update both view and URL correctly.
132
+
133
+ ## Learn More
134
+
135
+ - [Solid Router](../../../api/@xmachines/play-solid-router/README.md)
136
+ - [SolidJS](../../../api/@xmachines/play-solid/README.md)
137
+ - [TanStack Solid Router](../play-tanstack-solid-router-demo/README.md)
@@ -0,0 +1,143 @@
1
+ [Examples](../../README.md) / @xmachines/play-svelte-demo
2
+
3
+ <!-- generated-by: gsd-doc-writer -->
4
+
5
+ # @xmachines/play-svelte-demo
6
+
7
+ Svelte 5 renderer demo for [`@xmachines/play-svelte`](../../../api/@xmachines/play-svelte/README.md) — actor + `PlayRenderer` without a router.
8
+
9
+ ## What This Demonstrates
10
+
11
+ - Shared auth machine reused without framework-specific business logic
12
+ - `PlayRenderer` rendering actor-projected views with a typed `defineRegistry` catalog
13
+ - Auth machine states drive view switching via `auth.login` / `auth.logout` events only — no URL routing
14
+ - Svelte 5 runes and `mount` API mapped to TC39 Signals lifecycle
15
+ - Non-browser invariant tests plus browser renderer coverage
16
+
17
+ ## Running the Demo
18
+
19
+ From the repository root:
20
+
21
+ ```bash
22
+ pnpm install
23
+ pnpm --filter @xmachines/play-svelte-demo run dev
24
+ ```
25
+
26
+ Then open `http://localhost:3003`.
27
+
28
+ ## Step-by-Step Code Flow
29
+
30
+ Use this order to understand the implementation:
31
+
32
+ 1. `src/main.ts` calls `definePlayer({ machine: authMachine })` to create a factory, invokes it to get an actor, starts it, and mounts `App.svelte` via Svelte's `mount`.
33
+ 2. The actor is passed to `App` as a prop.
34
+ 3. `src/App.svelte` calls `defineRegistry(authCatalog, { components, actions })` to build the typed `registryResult` — real async action handlers dispatching to `actor.send()`.
35
+ 4. `App.svelte` delegates to `Shell.svelte`, passing both `actor` and `registryResult`.
36
+ 5. `Shell.svelte` renders `<PlayUIProvider><PlayRenderer /></PlayUIProvider>`, `<NavBar>`, and `<DebugPanel>` — the latter two observe actor signals directly via `watchSignal` inside `$effect`.
37
+ 6. HMR cleanup calls `actor.stop()` via `import.meta.hot.dispose`.
38
+ 7. Browser tests in `test/browser/` validate startup and interaction behavior.
39
+
40
+ ```ts
41
+ // src/main.ts (shape)
42
+ const createPlayer = definePlayer({ machine: authMachine });
43
+ const actor = createPlayer();
44
+ actor.start();
45
+
46
+ mount(App, { target: document.getElementById("app")!, props: { actor } });
47
+ ```
48
+
49
+ ```svelte
50
+ <!-- src/App.svelte (shape) -->
51
+ <script lang="ts">
52
+ let { actor }: { actor: AuthActor } = $props();
53
+
54
+ const registryResult = defineRegistry(authCatalog, {
55
+ components: {
56
+ Home, About, Contact, Login, Dashboard,
57
+ Overview, Stats, Profile, Settings, Navigation,
58
+ NavBar: NavBarView,
59
+ },
60
+ actions: {
61
+ login: async (args) =>
62
+ actor.send({ type: "auth.login", username: assertNonNullable(args, "args").username }),
63
+ logout: async () => actor.send({ type: "auth.logout" }),
64
+ route: async (args) => {
65
+ const { to, params } = assertNonNullable(args, "args");
66
+ actor.send({ type: "play.route", to, ...(params != null && { params }) });
67
+ },
68
+ },
69
+ });
70
+ </script>
71
+
72
+ <Shell {actor} {registryResult} />
73
+ ```
74
+
75
+ ## Key Files
76
+
77
+ - `src/main.ts` - actor creation/start and Svelte app mount with actor as prop
78
+ - `src/App.svelte` - registry construction, delegates rendering to `Shell.svelte`
79
+ - `src/components/Shell.svelte` - shared shell with `PlayUIProvider` + `PlayRenderer`, `NavBar`, and `DebugPanel`
80
+ - `src/components/` - demo view Svelte components bound to catalog component keys
81
+ - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
82
+ - `test/browser/renderer-demo.browser.test.ts` - browser-mode renderer coverage
83
+
84
+ ## State Machine & Architecture Details
85
+
86
+ The demo utilizes XMachines architectural invariants:
87
+
88
+ 1. **Actor Authority:** View components dispatch `auth.login` and `auth.logout` events to the actor. The actor evaluates guards and transitions — Svelte never decides which view to render.
89
+ 2. **Passive Infrastructure:** `PlayRenderer` observes `actor.currentView` signals only. It holds no business state and makes no routing decisions.
90
+ 3. **Signal-Only Reactivity:** The bridge leverages Svelte 5 rune reactivity internally to react precisely when actor signals update, without ad-hoc `$state` stores for business logic.
91
+
92
+ ## Watcher Lifecycle and Cleanup Contract
93
+
94
+ This demo follows the canonical watcher lifecycle used across all `@xmachines` framework adapters:
95
+
96
+ 1. `notify`
97
+ 2. `queueMicrotask`
98
+ 3. `getPending()`
99
+ 4. Read actor signals and project Svelte-local render state
100
+ 5. Re-arm with `watch()`/`watch(...signals)`
101
+
102
+ Watcher notifications are one-shot. Cleanup is explicit: `actor.stop()` is called during HMR disposal, and `PlayRenderer` handles internal watcher teardown natively on component destruction.
103
+
104
+ ## Adapter Boundaries
105
+
106
+ `PlayRenderer` and `defineRegistry` stay passive infrastructure. Business validity remains actor-owned. The registry maps catalog component keys to Svelte 5 component implementations — the actor owns which key is active. The `Shell.svelte` component is shared with all Svelte router demos, accepting an optional `router` prop for prop-shape parity.
107
+
108
+ ## Available Scripts
109
+
110
+ These commands are defined in `package.json`:
111
+
112
+ | Command | Description |
113
+ | ------------------------------------------------------------ | ---------------------------------------------- |
114
+ | `pnpm --filter @xmachines/play-svelte-demo run dev` | Start Vite dev server (http://localhost:3003/) |
115
+ | `pnpm --filter @xmachines/play-svelte-demo run build` | Build production bundle |
116
+ | `pnpm --filter @xmachines/play-svelte-demo run preview` | Preview built bundle |
117
+ | `pnpm --filter @xmachines/play-svelte-demo run test` | Run Vitest test suite |
118
+ | `pnpm --filter @xmachines/play-svelte-demo run test:browser` | Run browser-focused Vitest suite |
119
+
120
+ ## Verification
121
+
122
+ Use these checks to validate README claims against the current demo implementation:
123
+
124
+ ```bash
125
+ pnpm --filter @xmachines/play-svelte-demo run test
126
+ pnpm --filter @xmachines/play-svelte-demo run test:browser
127
+ ```
128
+
129
+ Expected result: library-pattern invariant tests pass and the browser renderer suite completes.
130
+
131
+ ## Learn More
132
+
133
+ - [`@xmachines/play-svelte`](../../../api/@xmachines/play-svelte/README.md) — the Svelte 5 renderer package this demo exercises
134
+
135
+ ## Type Aliases
136
+
137
+ - [App](type-aliases/App.md)
138
+ - [AuthCatalog](type-aliases/AuthCatalog.md)
139
+
140
+ ## Variables
141
+
142
+ - [App](variables/App.md)
143
+ - [authCatalog](variables/authCatalog.md)
@@ -0,0 +1,9 @@
1
+ [Examples](../../../README.md) / [@xmachines/play-svelte-demo](../README.md) / App
2
+
3
+ # Type Alias: App
4
+
5
+ ```ts
6
+ type App = SvelteComponent;
7
+ ```
8
+
9
+ Defined in: `svelte`
@@ -0,0 +1,9 @@
1
+ [Examples](../../../README.md) / [@xmachines/play-svelte-demo](../README.md) / AuthCatalog
2
+
3
+ # Type Alias: AuthCatalog
4
+
5
+ ```ts
6
+ type AuthCatalog = typeof authCatalog;
7
+ ```
8
+
9
+ Defined in: [packages/play-svelte/examples/demo/src/catalog.ts:6](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-svelte/examples/demo/src/catalog.ts#L6)
@@ -0,0 +1,9 @@
1
+ [Examples](../../../README.md) / [@xmachines/play-svelte-demo](../README.md) / App
2
+
3
+ # Variable: App
4
+
5
+ ```ts
6
+ const App: LegacyComponentType;
7
+ ```
8
+
9
+ Defined in: `svelte`
@@ -0,0 +1,172 @@
1
+ [Examples](../../../README.md) / [@xmachines/play-svelte-demo](../README.md) / authCatalog
2
+
3
+ # Variable: authCatalog
4
+
5
+ ```ts
6
+ const authCatalog: Catalog<
7
+ {
8
+ catalog: SchemaType<
9
+ "object",
10
+ {
11
+ actions: SchemaType<
12
+ "map",
13
+ {
14
+ description: SchemaType<"string", unknown>;
15
+ params: SchemaType<"zod", unknown>;
16
+ }
17
+ >;
18
+ components: SchemaType<
19
+ "map",
20
+ {
21
+ description: SchemaType<"string", unknown>;
22
+ example: SchemaType<"any", unknown>;
23
+ props: SchemaType<"zod", unknown>;
24
+ slots: SchemaType<"array", SchemaType<"string", unknown>>;
25
+ }
26
+ >;
27
+ }
28
+ >;
29
+ spec: SchemaType<
30
+ "object",
31
+ {
32
+ elements: SchemaType<
33
+ "record",
34
+ SchemaType<
35
+ "object",
36
+ {
37
+ children: SchemaType<"array", SchemaType<"string", unknown>>;
38
+ props: SchemaType<"propsOf", string>;
39
+ type: SchemaType<"ref", string>;
40
+ visible: SchemaType<"any", unknown>;
41
+ }
42
+ >
43
+ >;
44
+ root: SchemaType<"string", unknown>;
45
+ }
46
+ >;
47
+ },
48
+ {
49
+ actions: {
50
+ login: {
51
+ description: "Login with username";
52
+ params: ZodObject<
53
+ {
54
+ username: ZodString;
55
+ },
56
+ $strip
57
+ >;
58
+ };
59
+ logout: {
60
+ description: "Logout and return to home";
61
+ };
62
+ route: {
63
+ description: "Navigate to a route by path (e.g. '#home', '#login', '#dashboard')";
64
+ params: ZodObject<
65
+ {
66
+ params: ZodOptional<ZodRecord<ZodString, ZodString>>;
67
+ to: ZodString;
68
+ },
69
+ $strip
70
+ >;
71
+ };
72
+ };
73
+ components: {
74
+ About: {
75
+ props: ZodObject<
76
+ {
77
+ title: ZodString;
78
+ },
79
+ $strip
80
+ >;
81
+ };
82
+ Contact: {
83
+ props: ZodObject<
84
+ {
85
+ title: ZodString;
86
+ },
87
+ $strip
88
+ >;
89
+ };
90
+ Dashboard: {
91
+ props: ZodObject<
92
+ {
93
+ username: ZodString;
94
+ welcome: ZodBoolean;
95
+ },
96
+ $strip
97
+ >;
98
+ };
99
+ Home: {
100
+ props: ZodObject<
101
+ {
102
+ title: ZodString;
103
+ },
104
+ $strip
105
+ >;
106
+ };
107
+ Login: {
108
+ props: ZodObject<
109
+ {
110
+ title: ZodString;
111
+ username: ZodOptional<ZodString>;
112
+ },
113
+ $strip
114
+ >;
115
+ };
116
+ NavBar: {
117
+ props: ZodObject<
118
+ {
119
+ isAuthenticated: ZodBoolean;
120
+ username: ZodNullable<ZodString>;
121
+ },
122
+ $strip
123
+ >;
124
+ };
125
+ Navigation: {
126
+ props: ZodObject<
127
+ {
128
+ currentPath: ZodString;
129
+ isAuthenticated: ZodBoolean;
130
+ },
131
+ $strip
132
+ >;
133
+ };
134
+ Overview: {
135
+ props: ZodObject<
136
+ {
137
+ title: ZodString;
138
+ },
139
+ $strip
140
+ >;
141
+ };
142
+ Profile: {
143
+ props: ZodObject<
144
+ {
145
+ username: ZodString;
146
+ },
147
+ $strip
148
+ >;
149
+ };
150
+ Settings: {
151
+ props: ZodObject<
152
+ {
153
+ section: ZodOptional<ZodString>;
154
+ username: ZodString;
155
+ },
156
+ $strip
157
+ >;
158
+ };
159
+ Stats: {
160
+ props: ZodObject<
161
+ {
162
+ title: ZodString;
163
+ },
164
+ $strip
165
+ >;
166
+ };
167
+ };
168
+ }
169
+ >;
170
+ ```
171
+
172
+ Defined in: [packages/play-svelte/examples/demo/src/catalog.ts:5](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-svelte/examples/demo/src/catalog.ts#L5)
@@ -0,0 +1,129 @@
1
+ [Examples](../../README.md) / @xmachines/play-svelte-spa-router-demo
2
+
3
+ <!-- generated-by: gsd-doc-writer -->
4
+
5
+ # @xmachines/play-svelte-spa-router-demo
6
+
7
+ Svelte 5 + `svelte-spa-router` integration demo for the XMachines Play architecture using hash-based URL routing.
8
+
9
+ ## What This Demonstrates
10
+
11
+ - Shared auth machine reused without framework-specific business logic
12
+ - `connectRouter` hash-URL ↔ actor sync via [`@xmachines/play-svelte-spa-router`](../../../api/@xmachines/play-svelte-spa-router/README.md)
13
+ - Shell-driven rendering via `PlayRenderer` with actor-authoritative navigation
14
+ - Canonical TC39 Signals lifecycle integrated with Svelte 5 runes
15
+ - Non-browser invariant tests plus browser E2E coverage
16
+
17
+ ## Running the Demo
18
+
19
+ From the repository root:
20
+
21
+ ```bash
22
+ pnpm install
23
+ pnpm --filter @xmachines/play-svelte-spa-router-demo run dev
24
+ ```
25
+
26
+ Then open `http://localhost:3008`.
27
+
28
+ ## Step-by-Step Code Flow
29
+
30
+ Use this order to understand the implementation:
31
+
32
+ 1. `src/main.ts` mounts `App.svelte` and registers HMR cleanup via `cleanup`.
33
+ 2. `src/runtime.ts` creates the actor, builds the registry, calls `createRouteMap(authMachine)`, and wires `connectRouter({ actor, routeMap })`.
34
+ 3. `connectRouter` synchronizes hash URL changes with the actor via `play.route` events and reflects actor-approved routes back to the hash URL.
35
+ 4. `src/App.svelte` imports the singleton `actor` and `registryResult` from `src/runtime.ts` and delegates to the shared `Shell.svelte`.
36
+ 5. `Shell.svelte` renders `<PlayUIProvider>` + `<PlayRenderer />` with the actor and registryResult and provides the shared UI shell (nav, debug panel).
37
+ 6. Browser tests in `test/browser/` validate startup and auth route transitions.
38
+
39
+ ```ts
40
+ // src/runtime.ts (shape)
41
+ const createDemoPlayer = definePlayer({ machine: authMachine });
42
+ export const actor = createDemoPlayer();
43
+ actor.start();
44
+
45
+ export const routeMap = createRouteMap(authMachine);
46
+ export const disconnectRouter = connectRouter({ actor, routeMap });
47
+
48
+ export function cleanup(): void {
49
+ disconnectRouter();
50
+ actor.stop();
51
+ }
52
+ ```
53
+
54
+ ```svelte
55
+ <!-- src/App.svelte (shape) -->
56
+ <script lang="ts">
57
+ import { Shell } from "@xmachines/play-svelte-demo";
58
+ import { actor, registryResult } from "./runtime.js";
59
+ </script>
60
+
61
+ <Shell {actor} {registryResult} />
62
+ ```
63
+
64
+ ```svelte
65
+ <!-- Shell.svelte — rendering (shape) -->
66
+ <PlayUIProvider actor={props.actor} registryResult={props.registryResult}>
67
+ <PlayRenderer />
68
+ </PlayUIProvider>
69
+ ```
70
+
71
+ ## Key Files
72
+
73
+ - `src/main.ts` - Svelte app mount and HMR cleanup registration
74
+ - `src/runtime.ts` - actor creation, registry construction, route map, and `connectRouter` wiring
75
+ - `src/App.svelte` - minimal root component delegating to shared `Shell.svelte`
76
+ - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
77
+ - `test/browser/shared-demo.browser.test.ts` - browser startup and auth route flow coverage
78
+
79
+ ## State Machine & Architecture Details
80
+
81
+ The demo utilizes XMachines architectural invariants:
82
+
83
+ 1. **Actor Authority:** When a user clicks a nav link, the hash URL changes. `connectRouter` intercepts this, translates it to a `play.route` event, and sends it to the actor. The actor evaluates guards (e.g. `isAuthenticated`) and transitions to the appropriate state.
84
+ 2. **Passive Infrastructure:** `svelte-spa-router` does not execute business logic. The actor dictates whether navigation is permitted. The Svelte application only renders the state.
85
+ 3. **Signal-Only Reactivity:** The bridge leverages Svelte 5 rune reactivity internally to react precisely when actor signals update, without ad-hoc `$state` stores for business logic.
86
+
87
+ ## Watcher Lifecycle and Cleanup Contract
88
+
89
+ This demo follows the canonical watcher lifecycle used across all `@xmachines` framework adapters:
90
+
91
+ 1. `notify`
92
+ 2. `queueMicrotask`
93
+ 3. `getPending()`
94
+ 4. Read actor signals and project Svelte-local render state
95
+ 5. Re-arm with `watch()`/`watch(...signals)`
96
+
97
+ Watcher notifications are one-shot. Cleanup is explicit: `cleanup()` calls `disconnectRouter()` and `actor.stop()` during HMR disposal, preventing memory leaks and ghost subscriptions.
98
+
99
+ ## Adapter Boundaries
100
+
101
+ `connectRouter` (from [`@xmachines/play-svelte-spa-router`](../../../api/@xmachines/play-svelte-spa-router/README.md)) is passive infrastructure. It translates hash URL changes into `play.route` events and reflects actor-approved route changes back to the URL. Business validity remains actor-owned. The shared `Shell.svelte` from `@xmachines/play-svelte-demo` is reused to avoid duplicating view components across router demos.
102
+
103
+ ## Available Scripts
104
+
105
+ These commands are defined in `package.json`:
106
+
107
+ | Command | Description |
108
+ | ----------------------------------------------------------------------- | ---------------------------------------------- |
109
+ | `pnpm --filter @xmachines/play-svelte-spa-router-demo run dev` | Start Vite dev server (http://localhost:3008/) |
110
+ | `pnpm --filter @xmachines/play-svelte-spa-router-demo run build` | Build production bundle |
111
+ | `pnpm --filter @xmachines/play-svelte-spa-router-demo run preview` | Preview built bundle |
112
+ | `pnpm --filter @xmachines/play-svelte-spa-router-demo run test` | Run Vitest test suite |
113
+ | `pnpm --filter @xmachines/play-svelte-spa-router-demo run test:browser` | Run browser-focused Vitest suite |
114
+
115
+ ## Verification
116
+
117
+ Use these checks to validate README claims against the current demo implementation:
118
+
119
+ ```bash
120
+ pnpm --filter @xmachines/play-svelte-spa-router-demo run test
121
+ pnpm --filter @xmachines/play-svelte-spa-router-demo run test:browser
122
+ ```
123
+
124
+ Expected result: library-pattern invariant tests pass and the browser demo suite validates startup rendering and auth navigation.
125
+
126
+ ## Learn More
127
+
128
+ - [Svelte SPA Router](../../../api/@xmachines/play-svelte-spa-router/README.md)
129
+ - [Svelte](../../../api/@xmachines/play-svelte/README.md)