Releases: dandi/usage-page
Releases · dandi/usage-page
Release list
v1.3.7
v1.3.7
🚀 Enhancement
- Added "Stacked" toggle to the over-time plot settings panel to switch between stacked and overlay views when a group-by is active. (#141)
- Modularized settings into per-plot gear panels instead of a single global modal. (#132)
- Added line/bar plot type toggle with area shading for over-time and histogram views. (#120)
- Respected browser
prefers-color-schemesetting as the default light/dark theme. (#127) - Added version tag (bottom-left) and CON branding (bottom-right) to the page footer. (#119)
- Added SVG export button to the Plotly modebar. (#116)
- Stacked group-by over-time plots instead of overlaying them. (#112)
- Added hover tooltip descriptions to asset-type legend items in the over-time plot. (#109)
- Added "Asset type" group-by option to the over-time plot. (#105)
- Made table column spacing dynamic. (#96)
- Added "Group by Dandisets" overlay option for the usage over-time plot. (#87)
- Added hover-reveal anchor links to each plot section heading. (#85)
- Showed time aggregation controls in the table view of the over-time plot. (#83)
- Added light/dark mode toggle with
localStoragepersistence. (#75) - Added daily/weekly/monthly/yearly time aggregation to the over-time bytes plot. (#68)
- Replaced native radio buttons with a segmented pill toggle. (#66)
- Moved source data download links into each table header. (#65)
- Moved geographic map attributions into Plotly in-plot annotations. (#60)
- Added logo and favicon. (#59)
- Added plot/table view toggles with sortable columns for all sections. (#50)
- Sorted geographic dots by size ascending and added transparency. (#49)
- Added info icons to the settings panel to clarify the scope of each option. (#45)
- Wrapped top-level config options into a gear wheel modal. (#44)
- Synchronized color scheme and dark theme styling with other DANDI plugins. (#42)
- Added a choropleth toggle for the geographic map. (#40)
- Added exponential backoff retry logic for data fetches. (#39)
- Synced the selected dandiset with a URL query parameter for shareable links. (#36)
- Added AWS region histogram. (#29)
- Added cumulative usage over-time plot. (#11)
- Added log scale option for plots and updated the controls layout. (#3)
- Initial deployment of the DANDI usage page with geographic map, per-dandiset breakdown, and CI/CD pipeline. (#2)
📝 Documentation
- Added
CHANGELOG.mdto track changes to the project. - Added daily tests passing badge to
README.md. (#157) - Added codecov, license, release, and code style badges to
README.md. (#151) - Added a consolidated "Data sources" section linking to underlying data files. (#46)
- Added a note clarifying that only public (non-embargoed) datasets are included.
🐛 Bug Fix
- Fixed page flash (FOUC) and layout scrambling on page refresh. (#126)
- Fixed x-axis gaps in grouped dandisets cumulative plot by using global bin edges. (#123)
- Fixed first-load race condition that caused persistent URL parameters to be ignored. (#121)
- Disabled "Daily" aggregation when grouping by asset type. (#115)
- Capped asset name column width to prevent table layout blowout. (#100)
- Fixed gaps between bars in cumulative weekly/monthly over-time plots. (#99)
- Fixed anchor navigation so the page scrolls to the correct section after all plots load. (#98)
- Fixed anchor link flicker caused by popstate-triggered plot re-renders. (#95)
- Disabled and hid the per-asset histogram section for the "unassociated" dandiset. (#79)
- Hidden the histogram section entirely for the "undetermined" dandiset. (#77)
- Held fixed section sizes when switching between plot and table views. (#73)
- Fixed a fetch race condition. (#39)
- Improved histogram display and fixed cumulative bar gaps and labels. (#24, #26)
🏠 Internal
- Reorganized repository layout to use Vite with a
src/+configs/structure. (#103) - Added Google Analytics tracking. (#101)
- Renamed section anchor IDs by stripping the
_view_controlssuffix. (#92) - Renamed "Bytes sent" to "Usage" throughout the UI. (#81)
- Generalized base URLs so source data can be served from any repository. (#67)
- Offloaded inline styles to a separate
styles.cssfile. (#48) - Added
CNAMEfile to enable theusage.dandiarchive.orgcustom domain. (#33) - Swapped data source base URLs to the new repository location. (#14)
- Moved
gadm_admin1_simplified.topojsonandname_aliases.jsonfromconfigs/tosrc/configs/so changes to them are covered by the version-check CI. (#147) - Moved
src/tests/andsrc/stories/to top-leveltests/andstories/directories to avoid confusing AI tooling and the version-check CI. (#145) - Replaced the hand-duplicated HTML string in
MainPage.stories.jswith a?rawimport ofsrc/index.htmlso the Storybook story always derives its DOM structure directly from the source. (#143) - Moved
gadm_admin1_simplified.topojsonandname_aliases.jsonfrompublic/toconfigs/to reduce top-level noise. (#137) - Fixed
configs/vite.config.jspublicDirfromconfig/toconfigs/. (#140) - Swapped all
src/source files from JavaScript to TypeScript (plots.ts,utils.ts,errors.ts); addedtsconfig.json, type packages (typescript,@types/js-yaml,@types/plotly.js,@types/topojson-client,@types/node), avendor.d.tsshim forplotly.js-dist-min, and atypechecknpm script. (#149)
🧪 Tests
- Set up testing infrastructure: Vitest (unit), Playwright (e2e), Storybook/Chromatic (visual), and Codecov (coverage). (#129)
- Added weekly CI workflow (
npm-audit.yml) that runsnpm auditevery Monday and sends an email notification on failure. (#134) - Added weekly CI workflow (
weekly-tests.yml) that runs build, unit, and integration tests every Monday and sends an email notification on any failure or detected warning. (#138) - Added daily CI workflow (
daily-tests.yml) that runs build, unit, and integration tests every day at noon UTC and sends an email notification on any failure or detected warning. (#153) - Added Playwright visual testing with Chromatic: a new
chromatic-playwright.ymlCI workflow runs visual snapshot tests (dark and light themes) via@chromatic-com/playwrightand uploads them to a dedicated Chromatic project usingCHROMATIC_PLAYWRIGHT_PROJECT_TOKEN; the existing Chromatic workflow was renamed to "Chromatic (Storybook)". (#163) - Added
--disable-gputo Playwright Chromium launch args and filteredGL Driver Messagebrowser warnings in the integration test console listener to suppress the WebGL GPU stall warning in CI. (#161) - Made
test.ymla reusable workflow (workflow_call); simplifieddaily-tests.ymlto call ...