Skip to content
CAI
Software that uses CAICheck a score

amsb/react-evoke

49.7

Weak · 21 September 2026

1.2k

lines of production code

JavaScript

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

Evoke is a React state management library that provides a modern, context-based API for managing application state. It supports derived state calculations, middleware for side effects like logging, and robust error handling. The system is designed to simplify state management by allowing actions to be passed directly to a Store component, with comprehensive test coverage ensuring reliability.

Behavioural changes

Rebrand to Evoke with modernized build and configuration

The project has been renamed from React Synaptic to Evoke, reflected in the README and build configuration. The build system has been modernized by replacing the legacy .babelrc with a babel.config.js file and updating rollup.config.js to use ES module imports and named exports. Additionally, the .gitignore was updated to stop tracking package-lock.json, and the LICENSE file was updated with the current year.

(repo-wide) · high confidence

Refactored state management with new Store API and test coverage

The state management library has been refactored to use a modern React Context-based API, replacing the previous class-based components (Store, Connector, Dispatch) with a factory function that returns a new Store component and hooks. The new implementation introduces derived state, middleware support (including a console logger), and improved error handling with an ErrorBoundary. A comprehensive test suite has been added to verify the new store behavior, including initial state, derived state calculations, action dispatching, and error boundaries.

src · high confidence

Simplified store API and introduced derived state and middleware support

The example application has been refactored to use a simplified store API where actions are passed directly to the Store component rather than via a separate handlers object. The store now supports derived state definitions, allowing computed values like quote lengths to be automatically updated. Additionally, the store supports middleware, enabling features like logging, and includes an ErrorBoundary for handling action errors gracefully.

examples/nutshell · medium confidence

Dependencies

Upgrade dependencies and update project configuration

The project dependencies have been updated, including upgrading React and React-DOM to version 17.0.2 in the example app, and updating the core library's dependencies to include Immer 9.0.6 and Prop-Types 15.7.2. The build tooling has also been modernized, with Rollup upgraded to version 2.34.2 and Babel packages updated to version 7.12.x, alongside the addition of Jest for testing.

(dependencies) · 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

Score

  • CAI 46 → 50 (+4.0)
  • Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 97 → 64 (-32.6)
  • Architecture 69 → 69 (+0.0)
  • Maturity 49 → 53 (+3.1)
  • Readiness 24 → 38 (+13.5)
  • Security 75 → 80 (+5.0)

Resolved (38)

  • Coverage not included — suite not readable by the collector
  • Critical CVE: [GHSA redacted] (package-lock.json)
  • Critical CVE: [GHSA redacted] (package-lock.json)
  • Critical CVE: [GHSA redacted] (package-lock.json)
  • Critical CVE: [GHSA redacted] (package-lock.json)
  • Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • …and 18 more

New (45)

  • Critical CVE: [GHSA redacted] (package-lock.json)
  • Critical CVE: [GHSA redacted] (package-lock.json)
  • Critical CVE: [GHSA redacted] (package-lock.json)
  • Critical CVE: [GHSA redacted] (package-lock.json)
  • Documentation: no installation or build instructions (README.md)
  • FunctionTooLong: main.createStore (src/main.js)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • High CVE: [GHSA redacted] (package-lock.json)
  • …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

amsb/react-evoke 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 21 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 ebb04830cb998ee319a368c25c77a7d43e2794f7 — 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-fa71c66cabd8.