Skip to content

Conversation

@mattheworiordan
Copy link
Member

Context

This is a mini POC (Proof of Concept) created as part of the Web Platform Technical Strategy work led by Matthew O'Riordan.

DO NOT REVIEW - This branch is for internal validation only and is not meant to be merged as-is.

RFC Reference: WEBRFC-005: Web Platform Technical Strategy

Purpose

Validates RFC hypothesis: "Redux can be removed from Ably UI and replaced with a simpler state management solution."

Results

  • Verdict: VALIDATED
  • Redux dependency removed (4.3 KB minified)
  • Zustand added (1.2 KB minified)
  • Net savings: ~3.1 KB (not 42KB as originally estimated)
  • All 190 tests passing
  • Simpler code with modern API

New API

```typescript
import { useFlashStore, pushFlash, clearFlashes } from "@ably/ui/core/flash-store";

// Subscribe to flash state
const items = useFlashStore((state) => state.items);

// Push a flash from anywhere
pushFlash({ type: "success", content: "It worked!" });
```

See `POC_RESULTS.md` for detailed findings.


🤖 Generated as part of autonomous POC execution

Validates RFC hypothesis: "Redux can be removed from Ably UI and replaced
with a simpler state management solution without breaking Flash component
functionality."

Results:
- Redux dependency removed (4.3 KB minified)
- Zustand added (1.2 KB minified)
- Net savings: ~3.1 KB (not 42KB as originally estimated)
- All 190 tests passing
- Simpler code with modern API

New API:
- useFlashStore() hook for state subscription
- pushFlash() for adding flashes
- clearFlashes() for clearing all

Key findings documented in POC_RESULTS.md.

Part of WEBRFC-005 Web Platform Technical Strategy validation.
https://ably.atlassian.net/wiki/spaces/Web/pages/4681039885/WEBRFC-005

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 15, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants