Skip to content

Commit d418812

Browse files
authored
Chore/Ilha 0.2 release (#20)
* chore(ilha): prepare 0.2 release and bump templates * chore(changelog): update * chore(website): remove docs testing
1 parent f67ebe7 commit d418812

13 files changed

Lines changed: 136 additions & 296 deletions

File tree

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
## `ilha`
44

5+
### 0.2.0 - 2026-04-21
6+
7+
- Adds scoped CSS with client and SSR support
8+
59
### 0.1.0 — 2026-04-14
610

711
Initial release of **ilha** — a tiny, isomorphic island framework for building reactive UI components. Renders to HTML strings on the server and mounts as fine-grained reactive islands in the browser. No virtual DOM. No compiler. Powered by [alien-signals](https://github.com/stackblitz/alien-signals).
@@ -29,6 +33,11 @@ Initial release of **ilha** — a tiny, isomorphic island framework for building
2933

3034
## `@ilha/form`
3135

36+
### 0.2.0 - 2026-04-21
37+
38+
- Adds `defaultValues` property to set initial form state
39+
- Adds Programmatic `form.setValue` API
40+
3241
### 0.1.0 — 2026-04-14
3342

3443
Initial release of **@ilha/form** — a tiny, typed form binding library for ilha islands. Binds a Standard Schema validator to a native `<form>` element; wires up typed submission, per-field error tracking, and dirty state using native DOM events only. No virtual DOM. No external runtime dependencies. Async schema validation is not supported.
@@ -48,6 +57,12 @@ Initial release of **@ilha/form** — a tiny, typed form binding library for ilh
4857

4958
## `@ilha/router`
5059

60+
### 0.2.0 - 2026-04-21
61+
62+
- Adds route groups - not affecting pathname
63+
- Adds defineLayout helper
64+
- Adds SPA and SSR data loaders
65+
5166
### 0.1.0 — 2026-04-14
5267

5368
Initial release of **@ilha/router** — a lightweight, isomorphic router for ilha islands. Runs in the browser with full signal reactivity and on the server as a synchronous HTML string renderer. Pairs natively with Nitro and includes a Vite plugin for file-system based routing. Powered by [rou3](https://github.com/unjs/rou3), the same matching engine used by Nitro.
@@ -75,6 +90,10 @@ Initial release of **@ilha/router** — a lightweight, isomorphic router for ilh
7590

7691
## `@ilha/store`
7792

93+
### 0.1.1 - 2026-04-21
94+
95+
- Updates Ilha dependency to 0.2
96+
7897
### 0.1.0 — 2026-04-14
7998

8099
Initial release of **@ilha/store** — a zustand-shaped reactive store for ilha islands. Backed by alien-signals, the same engine powering ilha core state, for shared global state that lives outside any single island. Use it when state needs to be shared across multiple islands, updated from outside an island (e.g. a WebSocket handler), or persisted globally.

ROADMAP.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Roadmap
2+
3+
## Ilha
4+
5+
- [x] Fluent builder API with typed external props
6+
- [x] Reactive signals with optional initializer
7+
- [x] Sync/async derived values with loading, value, and error states
8+
- [x] Delegated event listeners with modifiers
9+
- [x] Reactive effects with cleanup support
10+
- [x] Post-mount lifecycle hook with cleanup support
11+
- [x] Two-way binding for form elements
12+
- [x] Named child island slots with independent SSR and activation
13+
- [x] Async enter/leave transition callbacks
14+
- [x] Builder finalizer returning a renderable Island
15+
- [x] Synchronous HTML string rendering
16+
- [x] Async rendering that awaits all derived values
17+
- [x] DOM mounting with automatic prop/state reading and unmount support
18+
- [x] Async SSR helper with hydration container and state snapshot
19+
- [x] Auto-discovery and mounting of hydration elements on a page
20+
- [x] Single-island mount helper returning an unmount function
21+
- [x] Global named reactive signals shared across all islands, SSR-safe
22+
- [x] XSS-safe HTML template tag with signal, array, and nesting support
23+
- [x] Raw trusted HTML marker to bypass escaping
24+
- [x] Lightweight built-in schema validator for typed props
25+
- [x] Scoped CSS with client and SSR support
26+
27+
## Ilha Router
28+
29+
- [x] Router builder factory with isolated route registry per request
30+
- [x] Route registration with static, param, and wildcard pattern support
31+
- [x] Synchronous HTML string rendering for a given URL
32+
- [x] Async SSR rendering with hydration markers
33+
- [x] Client-side router mounting with history and link interception
34+
- [x] Signal priming from current URL before island hydration
35+
- [x] Single-call hydration convenience combining priming, mounting, and activation
36+
- [x] Programmatic navigation with history stack control
37+
- [x] Reactive current route accessors (path, params, search, hash)
38+
- [x] Active route detection by pattern
39+
- [x] Delegated link interception skipping external, blank-target, and modifier-key clicks
40+
- [x] Router outlet island rendering the active route or an empty fallback
41+
- [x] Declarative link island for navigation
42+
- [x] Page-level layout wrapper composition
43+
- [x] Error boundary wrapper catching SSR and client render failures
44+
- [x] Vite plugin generating a router from the file system
45+
- [x] File-system routing conventions including layouts, error boundaries, and param segments
46+
- [x] Route groups - not affecting pathname
47+
- [x] defineLayout helper
48+
- [x] SPA and SSR loaders
49+
50+
## Ilha Form
51+
52+
- [x] Form binding factory that defers listener setup until explicitly mounted
53+
- [x] Typed submit callback on successful validation
54+
- [x] Structured error callback on failed validation
55+
- [x] Configurable validation timing (on submit, on blur, or on every keystroke)
56+
- [x] Mount method that attaches listeners and returns a cleanup function
57+
- [x] Idempotent unmount that removes all listeners
58+
- [x] Synchronous read of current form values with pass/fail result
59+
- [x] Per-field error map from the last validation run
60+
- [x] Dirty state tracking since last mount
61+
- [x] Programmatic form submission triggering the full validate/submit cycle
62+
- [x] Utility to convert validation issues into a field error map
63+
- [x] defaultValues property to set initial form state
64+
- [x] Programmatic form.setValue API
65+
66+
## Ilha Store
67+
68+
- [x] Reactive global store factory with optional encapsulated actions
69+
- [x] Stable state snapshot access
70+
- [x] Frozen initial state access for implementing resets
71+
- [x] Shallow state merging via plain object or updater function
72+
- [x] Full-state change subscription with unsubscribe
73+
- [x] Slice subscription firing only when selected value changes
74+
- [x] Reactive DOM rendering driven by full store state
75+
- [x] Reactive DOM rendering driven by a selected state slice
76+
- [x] Effect scope re-export for grouped teardown of multiple subscriptions
77+
78+
## Templates
79+
80+
- [x] Vite: SPA
81+
- [x] Hono: Backend API and SPA
82+
- [x] Nitro: Hybrid SSR with client hydration
83+
- [x] Elysia: Backend API and SPA
84+
- [x] Electrobun: Desktop app with SPA

art.md

Lines changed: 0 additions & 265 deletions
This file was deleted.

0 commit comments

Comments
 (0)