et1975/fable-aether
61.2
Adequate · 18 September 2026
41
lines of production code
JavaScript
primary language
1
measurement over time
What this system is
Fable.Aether is an F\# optics library ported for the Fable JavaScript compiler, providing functional programming tools for data manipulation. It exposes core optic types such as Lens, Prism, and Isomorphism, along with composition operators, to enable predictable state access and modification. The system includes a comprehensive test suite to validate these behaviors and is built using a .NET Standard 1.6 target with integrated CI infrastructure.
Features
Initial release of Fable.Aether with build and CI infrastructure
This entry introduces the Fable.Aether project, an F\# optics library ported for Fable. The release includes the core source files, a build system based on FAKE and Paket, and configuration for continuous integration via Travis CI and AppVeyor. It also establishes the testing framework using Fable-loader and NUnit, along with documentation and release notes for versions 0.1.0 through 1.0.2.
(repo-wide) · high confidence
Behavioural changes
Updated Aether library and Paket restore infrastructure
The project now includes a new Paket restore target file (.paket/Paket.Restore.targets) that integrates Paket package restoration directly into the MSBuild pipeline, ensuring dependencies are restored before project graph generation. Additionally, the bundled Aether library (paket-files/xyncro/aether) has been updated to a new commit version, introducing modern optic types (Lens, Prism, Isomorphism, Epimorphism) and composition operators while marking older 2.x-style types and functions as obsolete to facilitate a smoother transition to the 3.x API.
.paket, paket-files/xyncro/aether · high confidence
Test coverage
Added Fable-based unit tests for Aether optics
Added a new test suite in \tests/tests.fs\ that validates the core behavior of the Aether library's optics, including basic Lens and Prism functions (get, set, map) and their composition with isomorphisms. The tests verify correct value retrieval, modification, and handling of missing values across various optic combinations.
tests · high confidence
Dependencies
Initial project setup with F\# and .NET Core dependencies
This change introduces the foundational build configuration for the project, establishing a .NET Standard 1.6 target for the main library (Fable.Aether) and its test suite. It adds Paket dependency manifests and lockfiles to manage NuGet packages such as Fable.Core, Fable.PowerPack, and FSharp.Core, alongside a package.json and yarn.lock for JavaScript tooling including Babel, Webpack, and Mocha.
(dependencies) · high confidence
Initial project setup with F\# core dependencies
The project has been initialized with a new paket.references file that explicitly declares dependencies on FSharp.Core and Fable.Core, establishing the foundational library requirements for the application.
src · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Baseline
- First survey — no prior run to compare against. CAI 61.
Lenses
- Code Health 100
- Architecture 66
- Maturity 54
- Readiness 59
- Security 80
Changes since last survey
- 45 commits — 44 feature/other, 1 fixes
By area
- (root) — 34 commits
- (repo) — 9 commits
- tests/package.json — 1 commit
- tests/tests.fsx — 1 commit
Notable commits
- fix: trying to fix the CIs
- change: Bump async from 2.6.3 to 2.6.4
- change: Bump browserify-sign from 4.0.4 to 4.2.2
- change: Bump cipher-base from 1.0.4 to 1.0.6
- change: Bump decode-uri-component from 0.2.0 to 0.2.2
- change: Bump elliptic from 6.5.2 to 6.5.4
- change: Bump elliptic from 6.5.4 to 6.5.7
- change: Bump elliptic from 6.5.7 to 6.6.0
- change: Bump elliptic from 6.6.0 to 6.6.1
- change: Bump extend from 3.0.0 to 3.0.2
- change: Bump fstream from 1.0.10 to 1.0.12
- change: Bump hosted-git-info from 2.8.8 to 2.8.9
- change: Bump is-my-json-valid from 2.15.0 to 2.20.0
- change: Bump lodash from 4.17.15 to 4.17.19
- change: Bump lodash from 4.17.19 to 4.17.21
- change: Bump lodash from 4.17.2 to 4.17.15
- change: Bump minimatch from 3.0.4 to 3.1.2
- change: Bump path-parse from 1.0.6 to 1.0.7
- change: Bump pbkdf2 from 3.0.17 to 3.1.3
- change: Bump semver from 5.7.1 to 5.7.2
- …and 25 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
et1975/fable-aether was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 18 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit f9a75ef97b33aca42cd8ede0daae7085fd986535 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-5d04157a340d.