API Reference@pitchkit/data-providers
skillcorner
SkillCorner open-data loader — broadcast tracking, dynamic events and phases of play from 20 A-League 2024/25 matches.
import { fetchMatch, fetchDynamicEvents, offBallRuns } from "@pitchkit/data-providers/skillcorner";
const match = await fetchMatch(1874553);
const runs = offBallRuns(await fetchDynamicEvents(match));Same four layers as the StatsBomb module — parse* (pure), fetch*
(network), narrowing selectors, composable predicates — with three
differences worth knowing before you plot anything:
- Coordinates are metres from the centre spot, on a pitch whose real
dimensions vary by match (104-106 m long in this dataset). Parsers add
corner-origin
pitchX/pitchYusing that match's own dimensions, which is why the loaders take the match rather than just its id. - The two files disagree about direction. Tracking positions are
absolute and swap ends at half time; dynamic-event x is normalised so
positive always points at the goal being attacked. See
attackingSideOffor resolving the former. - Tracking is big — about 90 MB a match — and is served from a
different host because it's stored in Git LFS. Prefer
streamTrackingorfetchTrackingWindowoverfetchTracking.
Data is MIT-licensed; SkillCorner ask to be credited in anything published from it.
See
https://github.com/SkillCorner/opendata
Interfaces
- PitchProjection
- SkillCornerBall
- SkillCornerEventBase
- SkillCornerFrame
- SkillCornerLoadOptions
- SkillCornerMatch
- SkillCornerMatchPlayer
- SkillCornerMatchSummary
- SkillCornerOffBallRun
- SkillCornerOnBallEngagement
- SkillCornerOtherEvent
- SkillCornerPassingOption
- SkillCornerPeriod
- SkillCornerPhase
- SkillCornerPlayerPossession
- SkillCornerPlayerRole
- SkillCornerTeamRef
- SkillCornerTrackedPlayer
- TrackingWindowOptions
Type Aliases
Variables
Functions
- attackingSideOf
- breaksDefensiveLine
- detectedPlayers
- dynamicEventsUrl
- fetchDynamicEvents
- fetchMatch
- fetchMatches
- fetchPhasesOfPlay
- fetchTracking
- fetchTrackingWindow
- framesInPhase
- hasLocation
- hasPath
- inAttackingThird
- indexPlayersById
- inPenaltyArea
- inPlayFrames
- isCarry
- isCompletePass
- isDangerous
- isDetected
- isOffBallRun
- isOnBallEngagement
- isOneTouch
- isPassingOption
- isPhaseType
- isPlayerPossession
- isRunBehind
- isRunSubtype
- isSprint
- leadToGoal
- leadToShot
- loadDynamicEvents
- loadMatch
- loadMatches
- loadPhasesOfPlay
- loadTracking
- loadTrackingWindow
- matchesUrl
- matchUrl
- ofEventType
- offBallRuns
- onBallEngagements
- parseDynamicEvents
- parseMatch
- parseMatches
- parsePhasesOfPlay
- parseTracking
- parseTrackingFrame
- passingOptions
- phaseLedToGoal
- phaseLedToShot
- phasesOfPlayUrl
- pitchProjection
- playerPossessions
- playersOfTeam
- projectOrNull
- streamTracking
- streamTrackingFrom
- trackingUrl
- wasReceived
- wasTargeted
References
DataProviderError
Re-exports DataProviderError
DataProviderErrorKind
Re-exports DataProviderErrorKind
LoadOptions
Re-exports LoadOptions