Skip to content
/ gdq Public

A Go library for Games Done Quick

License

Notifications You must be signed in to change notification settings

daenney/gdq

Repository files navigation

🏃 GDQ 🎮

A Go library and CLI for Games Done Quick

Build Status Coverage Status Go report card GoDoc License: MIT

Games Done Quick (GDQ) is a regular speedrunning event that collects money for charity. The event is incredibly fun, especially if you enjoy seeing your favourite games torn to shreds by amazing runners and supported with great commentary and prizes to win.

This repo contains a Go library and CLI for working with the GDQ schedule. It uses the Tracker API to retrieve the data.

There is also a companion Matrix bot over at GDQBot.

Installation

CLI

There are prebuilt binaries available for every release from v1.0.0 onwards. You can find them over here.

Platform Architecture Binary
Windows amd64
macOS amd64
macOS arm64 (Apple Silicon)
Linux amd64
Linux arm64

Library

$ go get github.com/daenney/gdq/v2

Building

You can go get the library, or git clone and then run a go build followed by a go test ./... to ensure everything is OK.

You can build the CLI using go build -trimpath -o gdqctl cmd/gdqcli/*.go or install it directly using go install github.com/daenney/gdq/v2/cmd/gdqcli. See go help install for where the binaries will end up.

To embed the version, commit and date at build time you'll need to add -X main.version=VERSION -X main.commit=SHA -X main.date=DATE and compute the right values yourself.

Contributing

PRs welcome! Fork+clone the repo and send me a patch. Please ensure that:

  • Make small commits that encapsulate one functional change at a time (implementation change, the associated tests and any doc changes)
  • Every commit explains what it's trying to achieve and why
  • The tests pass