An open API service indexing awesome lists of open source software.

https://github.com/eros/ergast-node

Async Node.js wrapper for Ergast API
https://github.com/eros/ergast-node

ergast ergast-api f1 node nodejs typescript

Last synced: 3 months ago
JSON representation

Async Node.js wrapper for Ergast API

Awesome Lists containing this project

README

        

# Ergast Node

Small Async NodeJS wrapper for the Ergast API which provides data for the Formula 1 racing series.
See https://ergast.com/mrd/ for more information on their documentation.

# Install

`npm install @rapidthenerd/ergast-ts`

[Npm link](https://www.npmjs.com/package/@rapidthenerd/ergast-ts?activeTab=readme)

# Setup

`npm install axios`

`npm intsall -D @types/node-cache`

> Minimum supported Node.js version is v14

# Usage

```typescript
import {ErgastNode} from "./ergastNode";

class Example {

private readonly ergast: ErgastNode = new ErgastNode();

public exampleCircuit() {
this.ergast.circuit.getForCurrentYear(3);
this.ergast.circuit.getFor(2000, 3);
}

public exampleConstructor() {
this.ergast.constructor.getForTeam('red_bull');
}

public exampleDriver() {
this.ergast.driver.getByLastName('Tsunoda');
this.ergast.driver.getByDriverNumber(33);
}

public exampleFinishingStatus() {
this.ergast.finishingStatus.getFor(2000, 3);
this.ergast.finishingStatus.getForCurrentYear(3);
}

public exampleLaps() {
this.ergast.laps.getFor(2000, 2, 1);
this.ergast.laps.getForCurrentYear(2, 1);
}

public examplePitstops() {
this.ergast.pitStops.getFor(2000, 2, 1);
}

public exampleQualifying() {
this.ergast.qualifying.getFor(2000, 2);
}

public exampleSeasons() {
this.ergast.seasons.getForYear(2000);
this.ergast.seasons.getForCurrentYear();
}

public exampleStandings() {
this.ergast.standings.getFor(2000);
this.ergast.standings.getForCurrentYear();
}
}
```