Skip to content

v7.0.0

Choose a tag to compare

@esmalleydev esmalleydev released this 20 Sep 19:07
· 26 commits to master since this release

The headline of this release is the complete removal of Material-UI. sRating now runs entirely on its own component and icon libraries. Alongside that: NBA support, career-long stat rankings, and in-app notifications.

Goodbye MUI

@mui/material and @mui/icons-material are gone. MUI imports dropped from 172 files to 0 live references, replaced by:

  • @esmalley/react-material-ui ^1.3.1
  • @esmalley/react-material-icons ^4.0.2

The in-repo components/ux/* library (~37 files) was extracted into the published @esmalley/react-material-ui package and deleted from this repo. That accounts for most of the 20k deleted lines. Loading, modals, tables, inputs, menus, tooltips and buttons were all ported over in stages.

NBA support

NBA data is now wired through the GUI — rankings, boxscores, player gamelogs, trend graphs and the conference picker. NBA-aware code went from 2 files to 20, with a new components/helpers/NBA.ts for season defaults.

Career stats

New career-long ranking mode for players and coaches, spanning 15 files across rankings, player pages and the compare tool. A new Ranking/DataSince component tells you how far back coverage actually goes, which varies by sport and view (for example, CFB coaches from Aug 2000).

Notifications

New in-app notification centre (components/generic/Notifications.tsx), with unread badges on icon buttons.

Fantasy

  • New winner display for completed leagues
  • "My fantasy leagues" in the account menu
  • Substantial bracket fixes — seeding, scoring, timing and URL parsing
  • Fixed team search and a long-standing modal bug

Account & billing

  • API usage now renders as a progress bar with current/limit, remaining, and a colourthe cap
  • API keys are masked by default, with reveal and copy buttons
  • Regenerating a key now asks for confirmation first — it invalidates the old key immediately
  • Failed billing and key operations no longer leave the app stuck loading

New pages

  • Privacy policy (/privacy)
  • Blog, opening with a write-up on height calculations

Under the hood

  • Shared types extracted to @srating-io/types ^2.0.0; local types/cbb.ts and typnises entity types out of GeneralintoFantasy, PaymentsandAuth` namespaces
  • New useNavigation hook consolidating routing
  • TypeScript 5.5 → 6.0, @esmalley/ts-utils 6.1 → 6.4.4, web-vitals 4 → 5
  • Ranking table search improvements and a faster search bar
  • Repo moved from the esmalleydev org to srating-io

Next 16 and React 19 are unchanged from v6.

Housekeeping

The Jest test stack (jest, ts-jest, @types/jest, @testing-library/jest-dom) and the test script were removed.

Full Changelog: v6.0...v7.0.0