Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Category dashboard with collapsible filters #934

Merged
merged 36 commits into from
Feb 13, 2025

Conversation

sarahfossheim
Copy link
Collaborator

@sarahfossheim sarahfossheim commented Sep 24, 2024

New features

  • New compact header only used on the tech report pages
  • Sidebar with filters, instead of big card on top of the page
  • Prototype of the categories page:
    • Category level summary: number of origins and number of technologies within a category
    • Table with summarising info on all techs within that category
    • Possibility to click through to a specific tech, or compare multiple (or all) technologies within the tech
    • Prototype sortable table functionality (not in the UI yet)
    • /reports/techreport/category
  • Only one view for both drilldown and comparison view
    • Add more technologies to compare in the sidebar
    • New template loads depending on the amount of techs selected
    • See /reports/techreport/tech

(Visual) Improvements

Bugfixes

  • Updates to the responsiveness/zoom (more improvements to come in future PR)
  • The placeholder bright yellow color used for debugging WordPress line changed to color with enough contrast
  • Updated copywriting for some section (more improvements to come in future PR)
  • Fixed keyboard order for the points on comparison graphs (it was reversed)
  • Geo & Rank are remembered between categories and technology dashboard
  • Sort table alternatives from recent to old (Tech Report: The table data is not sorted #996)

Screenshots

Technologies

One technology

Technology drill down view with 'All technologies' selected from the filter sidebar. The page shows 4 summary cards (latest CWVs, LH performance, LH accessibility, and page weight)

Multiple technologies

Desktop

Desktop version of the comparison view: filter sidebar on the left showing all techs, wordpress, wix, eleventy, and a comparison table on the right. The nav in the header has items: HttpArchive logo, all reports, tech report, technologies, categories

Mobile

Mobile version of the comparison view: the site navigation is hidden behind a hamburger icon, the filters are collapsed into a top navigation bar as well

Categories

Cateogries page with CMS selected from the filters. There's a card showing # of origins and # of technologies within the category, and underneath there's a summary table

src/js/components/filters.js Fixed Show fixed Hide fixed
src/js/techreport/index.js Fixed Show fixed Hide fixed
@rviscomi rviscomi marked this pull request as draft October 9, 2024 13:47
@sarahfossheim sarahfossheim marked this pull request as ready for review November 4, 2024 23:04
@sarahfossheim sarahfossheim changed the title [WIP] Category dashboard with collapsible filters Category dashboard with collapsible filters Dec 4, 2024
@rviscomi rviscomi requested a review from tunetheweb December 4, 2024 15:14
Copy link
Member

@rviscomi rviscomi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Staged here and left a bunch of feedback: https://technology-report-dot-httparchive.uk.r.appspot.com/reports/techreport/category?geo=ALL&rank=ALL&category=CMS

I had to patch one bug to get it to work (the fix is in one of the comment suggestions) but otherwise these are all just feature requests. Great work!

src/js/techreport/tableLinked.js Outdated Show resolved Hide resolved

console.log(sortMetric);
if(sortMetric) {
this.dataArray = this.dataArray.sort((techA, techB) => {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was able to work around the error below by filtering out empty arrays before sorting. Not sure if it's the best fix though.

Suggested change
this.dataArray = this.dataArray.sort((techA, techB) => {
this.dataArray = this.dataArray.filter(tech => tech.length).sort((techA, techB) => {

config/techreport.json Show resolved Hide resolved
src/js/techreport/tableLinked.js Outdated Show resolved Hide resolved
src/js/techreport/tableLinked.js Show resolved Hide resolved
config/techreport.json Show resolved Hide resolved
src/js/techreport/tableLinked.js Show resolved Hide resolved
templates/techreport/templates/selector_tech.html Outdated Show resolved Hide resolved
templates/techreport/category.html Show resolved Hide resolved
templates/techreport/category.html Show resolved Hide resolved
@sarahfossheim
Copy link
Collaborator Author

@rviscomi - I made a lot of updates based on the feedback you left, and created follow-up action items for the larger todos (sorting of the table f.ex) so those can go in a follow-up PR. Also fixed a few other things at the same time, like removing/replacing the placeholder texts and making the navigation responsive (hamburger menu).

So it's ready for re-review :)

Copy link
Member

@tunetheweb tunetheweb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK I think this is good to merge!

@tunetheweb tunetheweb merged commit a82b3bc into main Feb 13, 2025
13 checks passed
@tunetheweb tunetheweb deleted the cwvtech-category-dashboard branch February 13, 2025 21:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Tech Report HTTP Archive Technology Report
Projects
None yet
3 participants