diff --git a/README.md b/README.md index f1270c1..775d5aa 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,38 @@ # NHL Scoreboard Web App -This web application displays live NHL game scores, team statistics, and game states in real-time. It retrieves data from the NHL API and presents it in a user-friendly interface. +A web application that displays live NHL game scores, team statistics, and game states in real-time. Retrieves data from the NHL API and surfaces the most interesting games first using a hype scoring algorithm. ## Features -- Displays live NHL game scores. -- Sorts games based on priority to highlight the most exciting matchups. -- Responsive design for desktop and mobile devices. +- Live NHL game scores, shots on goal, and game state +- Power play indicators with live countdown clock +- Smooth period and intermission countdown clocks +- **Hype Meter** — ranks games by how exciting they are right now, factoring in: + - Period, time remaining, and score differential + - Late-game urgency and comeback bonuses + - Power play situations + - **Game importance** — boosts standings-relevant matchups late in the season, with extra weight for division and conference rivals fighting for playoff spots + +## Hype Scoring + +Games are sorted by a priority score combining in-game excitement and contextual importance: + +| Factor | Description | +|---|---| +| Period & time | Later period and deeper into it = higher base score | +| Score differential | Close games rank higher; blowouts are penalized | +| Late urgency | Bonus for ties and 1-goal games in the final 12 minutes | +| Comeback | One-time spike when the trailing team scores to pull within 2 | +| Power play | Bonus for an active man advantage, scaling with game situation | +| Game importance | Season-progress × playoff-bubble proximity × rivalry multiplier (max +150 pts) | + +Game importance ramps up sharply after ~game 55 of 82, peaks for teams fighting for the last wildcard spot, and applies a 1.4× bonus for division games and 1.2× for conference games. ## Technologies Used -- **Python**: Backend scripting language. -- **Flask**: Web framework for Python. -- **HTML/CSS**: Frontend markup and styling. -- **JavaScript**: Client-side scripting for auto-refresh functionality. +- **Python / Flask** — backend and API polling +- **SQLite** — standings cache (refreshed every 10 minutes) +- **HTML / CSS / JavaScript** — frontend with auto-refresh every 10 seconds ## Installation @@ -35,19 +54,12 @@ This web application displays live NHL game scores, team statistics, and game st python run.py ``` -4. Open your web browser and navigate to `http://localhost:2897` to view the scoreboard. - -## Usage - -- The scoreboard will display live NHL game scores, team statistics, and game states. -- Games are sorted based on priority to highlight the most exciting matchups. -- The page updates automatically every 10 seconds to show the latest data. -- Responsive design ensures a seamless experience on desktop and mobile devices. +4. Open `http://localhost:2897` in your browser. ## Credits -Special thanks to the NHL for providing the data through their API. +Data provided by the NHL via their public API. ## License -This project is licensed under the [MIT License](LICENSE). +[MIT License](LICENSE)