The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

fastRhockey 1.0.0 (continued development)

New features

Bug fixes

Housekeeping

ESPN NHL endpoints

Data loaders

Dependencies

Deprecations & fixes

CI: NHL loader + xG tests, and two fixes

Documentation: @return column tables for all working functions

nhl_schedule() gains a game_type parameter

pwhl_schedule() defaults to combined regular season + playoffs

pwhl_player_game_log() and pwhl_streaks() default to combined types

PWHL parity: 3 new NHL loaders + datasets

Three new season-level NHL loaders that bring NHL coverage in line with PWHL. Each is backed by a new release tag on sportsdataverse/sportsdataverse-data and powered by new extractors in fastRhockey-nhl-raw/R/scrape_nhl_raw.R and fastRhockey-nhl-data/R/nhl_data_creation.R.

function release tag rows per game
load_nhl_officials() nhl_officials one per official (refs+lins)
load_nhl_shots_by_period() nhl_shots_by_period one per team per period
load_nhl_shootout() nhl_shootout one per shootout attempt

nhl_schedule() data-availability flags

nhl_schedule() gained an include_data_flags = FALSE parameter. When TRUE, the live schedule is left-joined against the cached nhl_games_in_data_repo index from the data repo and gains 16 logical columns (PBP, team_box, player_box, skater_box, goalie_box, game_info, game_rosters, scoring, penalties, scratches, linescore, three_stars, shifts, officials, shots_by_period, shootout) telling you which pre-compiled datasets cover each game. The schedule files in fastRhockey-nhl-raw/nhl/schedules/ and the master schedule on the data repo carry these same flags.

Richer per-game JSON in fastRhockey-nhl-raw

scrape_nhl_raw.R now writes four additional top-level keys into both nhl/json/raw/{game_id}.json and nhl/json/final/{game_id}.json:

Refactor: NHL loaders consolidated into R/nhl_loaders.R

All NHL season-level loaders and the shared .nhl_release_loader() helper now live in R/nhl_loaders.R, mirroring the PWHL convention (R/pwhl_loaders.R). The empty R/nhl_pbp.R file was removed since it never contained an actual nhl_pbp() scraper — only loaders. Public signatures and return types are unchanged.

New NHL Edge Analytics (33 functions)

Wraps the NHL Edge advanced-metrics endpoints under https://api-web.nhle.com/v1/edge/.... Every wrapper accepts an optional season argument (4-digit end year, e.g., 2025) — when omitted, the /now form is used to fetch the current season. All wrappers share an internal .nhl_edge_api() helper in R/helpers_nhl_edge.R.

family functions
Skater nhl_edge_skater_detail(), nhl_edge_skater_landing(), nhl_edge_skater_comparison(), nhl_edge_skater_shot_location_detail(), nhl_edge_skater_shot_location_top_10(), nhl_edge_skater_shot_speed_detail(), nhl_edge_skater_shot_speed_top_10(), nhl_edge_skater_skating_speed_detail(), nhl_edge_skater_speed_top_10(), nhl_edge_skater_skating_distance_detail(), nhl_edge_skater_distance_top_10(), nhl_edge_skater_zone_time(), nhl_edge_skater_zone_time_top_10(), nhl_cat_edge_skater_detail()
Goalie nhl_edge_goalie_detail(), nhl_edge_goalie_landing(), nhl_edge_goalie_comparison(), nhl_edge_goalie_5v5_detail(), nhl_edge_goalie_5v5_top_10(), nhl_edge_goalie_save_percentage_detail(), nhl_edge_goalie_edge_save_pctg_top_10(), nhl_edge_goalie_shot_location_detail(), nhl_edge_goalie_shot_location_top_10(), nhl_cat_edge_goalie_detail()
Team nhl_edge_team_detail(), nhl_edge_team_landing(), nhl_edge_team_shot_location_detail(), nhl_edge_team_shot_location_top_10(), nhl_edge_team_shot_speed_detail(), nhl_edge_team_skating_speed_detail(), nhl_edge_team_skating_speed_top_10(), nhl_edge_team_skating_distance_detail(), nhl_edge_team_skating_distance_top_10(), nhl_edge_team_zone_time_details(), nhl_edge_team_zone_time_top_10()

New NHL Records API integration (25 functions)

First-time integration with https://records.nhl.com/site/api/. All wrappers share an internal .nhl_records_api() helper in R/helpers_nhl_records.R that supports cayenneExp filters, limit/start pagination, and the records-API response shape ({data, total}).

New NHL Stats REST wrappers (13 functions)

Promotes endpoints that were previously only reachable via nhl_stats_misc()’s generic dispatcher into discoverable, dedicated wrappers. Documentation for nhl_stats_misc() was also updated to enumerate every valid endpoint value.

New NHL api-web miscellaneous endpoints (6 functions + 3 in-place updates)

New helper aggregators inspired by nhl-api-py (6 functions)

Convenience wrappers that orchestrate multiple endpoint calls into one tidy data frame:

Endpoint mapping + OpenAPI specs

Bug Fixes / API quirks documented

New NHL Loaders

Ten new season-level loaders that pull pre-compiled NHL datasets from new release tags on sportsdataverse/sportsdataverse-data. All accept a seasons vector (Min: 2011) and return a fastRhockey_data data frame, mirroring the existing load_nhl_*() API:

function release tag rows per game
load_nhl_skater_box() nhl_skater_boxscores one per skater
load_nhl_goalie_box() nhl_goalie_boxscores one per goalie
load_nhl_game_rosters() nhl_game_rosters one per dressed player
load_nhl_game_info() nhl_game_info one
load_nhl_scoring() nhl_scoring one per goal
load_nhl_penalties() nhl_penalties one per penalty
load_nhl_three_stars() nhl_three_stars up to three
load_nhl_scratches() nhl_scratches one per scratched player
load_nhl_linescore() nhl_linescore one
load_nhl_shifts() nhl_shifts one per shift

The six pre-existing loaders (load_nhl_pbp(), load_nhl_pbp_lite(), load_nhl_player_box(), load_nhl_team_box(), load_nhl_schedule(), load_nhl_rosters()) were refactored to share a single internal worker (.nhl_release_loader()) without changing their public signatures or return types.

New PWHL Loaders

Eleven new season-level loaders that pull pre-compiled PWHL datasets from new release tags on sportsdataverse/sportsdataverse-data. All accept a seasons vector (Min: 2024) and return a fastRhockey_data data frame, mirroring the existing load_pwhl_*() API:

function release tag rows per game
load_pwhl_skater_box() pwhl_skater_boxscores one per skater
load_pwhl_goalie_box() pwhl_goalie_boxscores one per goalie
load_pwhl_team_box() pwhl_team_boxscores two (home/away)
load_pwhl_game_info() pwhl_game_info one
load_pwhl_scoring_summary() pwhl_scoring_summary one per goal
load_pwhl_penalty_summary() pwhl_penalty_summary one per penalty
load_pwhl_three_stars() pwhl_three_stars up to three
load_pwhl_officials() pwhl_officials one per official
load_pwhl_shots_by_period() pwhl_shots_by_period one per period
load_pwhl_shootout() pwhl_shootout one per attempt
load_pwhl_game_rosters() pwhl_game_rosters one per dressed player

The four pre-existing loaders (load_pwhl_pbp(), load_pwhl_player_box(), load_pwhl_schedule(), load_pwhl_rosters()) were refactored to share a single internal worker (.pwhl_release_loader()) without changing their public signatures or return types.

fastRhockey 1.0.0

Breaking Changes

New PWHL Functions

New NHL Functions

Bug Fixes

Deprecations

Improvements

Documentation & Infrastructure

fastRhockey 0.7.0

PWHL functions added

fastRhockey 0.6.0

fastRhockey 0.5.0

fastRhockey 0.4.2

fastRhockey 0.4.1

fastRhockey 0.4.0

fastRhockey 0.3.1

fastRhockey 0.3.0

fastRhockey 0.2.1

fastRhockey 0.2.0

fastRhockey 0.1.0

fastRhockey 0.0.4

Loader functions for PHF

Player and Team Stats, Leaderboards

fastRhockey 0.0.3

Function naming convention normalization

fastRhockey 0.0.2

fastRhockey 0.0.1

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.