···2233All notable changes to this project will be documented in this file.
4455+## [0.1.0-alpha.8] - 2026-02-07
66+77+### Added
88+99+- **Docs site** — Astro Starlight documentation site with tutorials, concepts, stories, and examples
1010+- **Nullability guards** — `isDefined`, `isNotNull`, `isNotNullish` for piping and filtering
1111+- **`hasProperties` guard** — Multi-property object checking: `hasProperties("id", "name", "email")(data)`
1212+- **Recursion over loops concept article** — Why pure functional code avoids loops and how to replace them with expressions
1313+1414+### Changed
1515+1616+- **TS 5.5+ inferred type predicates** — Removed redundant `: x is T` annotations from simple guards where TypeScript infers them automatically
1717+- **Stricter tsconfig** — Added `exactOptionalPropertyTypes` and `noPropertyAccessFromIndexSignature`
1818+- Replaced all `forEach`/imperative loops in docs and examples with `map`+`join`, `reduce`, and `test.each`
1919+- Replaced `switch` statements with `match()` in story examples
2020+- Replaced manual null/undefined checks with library guards (`isDefined`, `isObject`, `hasProperties`) in docs and examples
2121+522## [0.1.0-alpha.7] - 2026-02-07
623724### Added
+1-1
package.json
···11{
22 "name": "purus-ts",
33- "version": "0.1.0-alpha.7",
33+ "version": "0.1.0-alpha.8",
44 "description": "Pure TypeScript effect system with fiber-based concurrency, brands, refinements, and pattern matching",
55 "type": "module",
66 "main": "./dist/index.js",