Skip to content

Solver directory + accessible SVG chart primitives - #568

Open
NuMziE26 wants to merge 2 commits into
stellar-vortex-protocol:mainfrom
NuMziE26:drips/460-461
Open

NuMziE26 wants to merge 2 commits into
stellar-vortex-protocol:mainfrom
NuMziE26:drips/460-461

Conversation

@NuMziE26

Copy link
Copy Markdown

Summary

Solver directory + accessible SVG chart primitives

What was solved

#460 — [High] Add a solver directory with typeahead search, verified filter and chain-capability matrix

Add a solver directory at /solve/directory with typeahead search (sanitised names, address prefix/suffix matching, min 4 chars), URL-synced filters (verified, chain, token, inactive toggle), and a chain-capability matrix (source chain rows × destination token columns) showing solver counts per cell with keyboard-accessible grid navigation and aria-labels. Includes a pure buildCapabilityMatrix function, virtualised list for 500+ solvers, skeleton/empty/error states, i18n strings, and tests.

Addressed:

  • Changed: src/hooks/useSolvers.ts
  • Directory page at /solve/directory with typeahead search using sanitised solver names and address matching (min 4 chars, prefix/suffix)
  • URL-synced filters for verified status, chain, token, and inactive solvers toggle
  • Matrix view (source chain rows × destination token columns) showing solver counts per cell

#461 — [High] Build an accessible SVG chart primitives library (line, area, bar, donut) with keyboard navigation and data-table fallbacks

Create an internal accessible SVG chart primitives library (LineChart, AreaChart, BarChart, DonutChart, Sparkline, Legend, ChartTooltip) with pure scale helpers, keyboard navigation, aria-live tooltips, data-table fallbacks, pattern/marker encodings, ResizeObserver responsiveness, LTTB downsampling, and reduced-motion support, then migrate the AnalyticsPageClient volume and status charts to use it.

Addressed:

  • Changed: src/components/charts/index.ts, docs/components.md
  • Build typed generic components LineChart, AreaChart, BarChart, DonutChart, Sparkline, Legend, ChartTooltip under src/components/charts/* using Tailwind palette tokens for light and dark themes
  • No new charting dependency unless it passes check-dependencies.mjs and bundle-size checks
  • Keyboard: focusable data points navigable by arrow keys with tooltips announced via aria-live

Changes

  • src/components/charts/index.ts (create)
  • src/hooks/useSolvers.ts (modify)
  • docs/components.md (modify)

Approach

  1. [High] Add a solver directory with typeahead search, verified filter and chain-capability matrix #460 — [High] Add a solver directory with typeahead search, verified filter and chain-capability matrix (Changed: src/hooks/useSolvers.ts)
  2. [High] Build an accessible SVG chart primitives library (line, area, bar, donut) with keyboard navigation and data-table fallbacks #461 — [High] Build an accessible SVG chart primitives library (line, area, bar, donut) with keyboard navigation and data-table fallbacks (Changed: src/components/charts/index.ts, docs/components.md)

Issues

Closes #460
Closes #461

@drips-wave

drips-wave Bot commented Sep 30, 2026

Copy link
Copy Markdown

@NuMziE26 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

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

Labels

None yet

Projects

None yet

1 participant