create-foldkit-app 0.17.1 → 0.17.2

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.
package/README.md CHANGED
@@ -18,22 +18,33 @@ The CLI prompts you for a project name, starter example, and package manager. Pa
18
18
 
19
19
  ## Examples
20
20
 
21
- | Example | Description |
22
- | ---------------- | ----------------------------------------------------------------------------------- |
23
- | `counter` | Simple increment/decrement with reset |
24
- | `counters` | A dynamic list of Counter Submodels with per-instance routing via a wrapper Message |
25
- | `stopwatch` | Timer with start/stop/reset |
26
- | `weather` | HTTP requests with async state handling |
27
- | `todo` | CRUD operations with localStorage persistence |
28
- | `form` | Form validation with async email checking |
29
- | `snake` | Classic game built with Subscriptions |
30
- | `routing` | URL routing with parser combinators and route parameters |
31
- | `query-sync` | URL-driven filtering, sorting, and search |
32
- | `shopping-cart` | Complex state management with nested Models |
33
- | `websocket-chat` | Managed resources with WebSocket |
34
- | `auth` | Authentication with Submodels, OutMessage, and protected routes |
35
- | `embedding` | A Foldkit widget embedded in a plain TypeScript host page with Ports and dispose |
36
- | `ui-showcase` | Every Foldkit UI component with routing |
21
+ | Example | Description |
22
+ | ------------------------ | ------------------------------------------------------------------------------------------------------ |
23
+ | `counter` | Simple increment/decrement with reset |
24
+ | `counters` | A dynamic list of Counter Submodels with per-instance routing via a wrapper Message |
25
+ | `todo` | CRUD operations with localStorage persistence |
26
+ | `stopwatch` | Timer with start/stop/reset |
27
+ | `crash-view` | Custom crash fallback UI with crash.view and crash.report |
28
+ | `slow-warnings` | Interactive lab for slow update, view, patch, and Subscription dependency warnings |
29
+ | `form` | Form validation with async email checking |
30
+ | `job-application` | Multi-step form with async validation, file uploads, and per-step error indicators |
31
+ | `weather` | HTTP requests with async state handling |
32
+ | `api-cache` | Query caching in the Model with stale-while-revalidate, request deduplication, and interval refetching |
33
+ | `routing` | URL routing with parser combinators and route parameters |
34
+ | `query-sync` | URL-driven filtering, sorting, and search with query parameters |
35
+ | `snake` | Classic game built with Subscriptions |
36
+ | `canvas-art` | Declarative 2D canvas with shapes, animation-frame Subscriptions, and pointer events |
37
+ | `generative-art` | Perlin-noise flow field with evolving particle trails, mouse vortex, and high-frequency Messages |
38
+ | `auth` | Authentication with Submodels, OutMessage, and protected routes |
39
+ | `shopping-cart` | Complex state management with nested Models and routing |
40
+ | `pixel-art` | Pixel editor with undo/redo, UI components, and localStorage persistence |
41
+ | `websocket-chat` | Managed resources with WebSocket integration |
42
+ | `managed-resource-layer` | Layer-backed ManagedResource lifecycle with an Effect service |
43
+ | `kanban` | Drag-and-drop board with fractional indexing, keyboard navigation, and screen reader announcements |
44
+ | `map` | Interactive MapLibre GL map with Mount and Subscriptions |
45
+ | `web-components` | QR code designer wiring third-party web components into Foldkit with CustomElement.define |
46
+ | `embedding` | A Foldkit widget embedded in a plain TypeScript host page with Ports and dispose |
47
+ | `ui-showcase` | Every Foldkit UI component with routing and Submodels |
37
48
 
38
49
  ## License
39
50
 
package/dist/examples.js CHANGED
@@ -4,6 +4,7 @@ export const EXAMPLE_VALUES = [
4
4
  'todo',
5
5
  'stopwatch',
6
6
  'crash-view',
7
+ 'slow-warnings',
7
8
  'form',
8
9
  'job-application',
9
10
  'weather',
@@ -17,7 +18,9 @@ export const EXAMPLE_VALUES = [
17
18
  'shopping-cart',
18
19
  'pixel-art',
19
20
  'websocket-chat',
21
+ 'managed-resource-layer',
20
22
  'kanban',
23
+ 'map',
21
24
  'web-components',
22
25
  'embedding',
23
26
  'ui-showcase',
@@ -48,6 +51,11 @@ export const examples = [
48
51
  title: 'crash-view',
49
52
  description: 'Custom crash fallback UI with crash.view and crash.report',
50
53
  },
54
+ {
55
+ value: 'slow-warnings',
56
+ title: 'slow-warnings',
57
+ description: 'Interactive lab for slow update, view, patch, and Subscription dependency warnings',
58
+ },
51
59
  {
52
60
  value: 'form',
53
61
  title: 'form',
@@ -113,11 +121,21 @@ export const examples = [
113
121
  title: 'websocket-chat',
114
122
  description: 'Managed resources with WebSocket integration',
115
123
  },
124
+ {
125
+ value: 'managed-resource-layer',
126
+ title: 'managed-resource-layer',
127
+ description: 'Layer-backed ManagedResource lifecycle with an Effect service',
128
+ },
116
129
  {
117
130
  value: 'kanban',
118
131
  title: 'kanban',
119
132
  description: 'Drag-and-drop board with fractional indexing, keyboard navigation, and screen reader announcements',
120
133
  },
134
+ {
135
+ value: 'map',
136
+ title: 'map',
137
+ description: 'Interactive MapLibre GL map with Mount and Subscriptions',
138
+ },
121
139
  {
122
140
  value: 'web-components',
123
141
  title: 'web-components',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-foldkit-app",
3
- "version": "0.17.1",
3
+ "version": "0.17.2",
4
4
  "description": "Create Foldkit applications",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",