Skip to content

feat: "WiFi Health Score" — your router's report card, always visible #49

Description

@ajithakdev

Summary

Create an overall "WiFi Health Score" (0–100) that combines all metrics into a single number that anyone can understand, displayed prominently in the popup, side panel, and toolbar badge.

The Score

📶 WiFi Health: 87/100 — Great!

Weighted formula:

  • Download speed vs plan: 25%
  • Upload speed vs plan: 15%
  • Ping/latency: 20%
  • Jitter (stability): 15%
  • Packet loss: 15%
  • Bufferbloat grade: 10%

Score ranges

Score Label Emoji Meaning
90-100 Excellent 🚀 Perfect for everything
70-89 Great 🟢 Good for streaming, calls, gaming
50-69 Okay 🟡 Browsing fine, calls may stutter
30-49 Poor 🟠 Basic browsing only
0-29 Critical 🔴 Barely usable, take action

Why a single score matters

  • Non-technical users don't want 6 different metrics. They want ONE answer: "Is my WiFi good?"
  • It's the equivalent of a credit score for your internet
  • Shareable: "My WiFi score is 87, what's yours?" → organic growth
  • Trackable over time: "My score dropped from 85 to 42 this month"
  • ISP accountability: "My ISP's average score is 38/100"

Display locations

  1. Popup hero area: Big number with emoji and label
  2. Toolbar badge: Show score number (87) with color background
  3. Side panel: Score with trend arrow (↑↓) vs last test
  4. PDF report: Score on cover page
  5. Share card: Prominent in shared results

Implementation

  • New calculateHealthScore() function in quality.ts
  • Normalize each metric to 0-100 scale, apply weights
  • If ISP plan is configured, score includes plan delivery %
  • If no plan configured, score uses absolute thresholds

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    UXUser experience improvementsenhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions