A Go Client for the Dungeons and Dragons 5e SRD REST API
Install with the go get command
go get github.com/brittonhayes/dnd
View the full docs on pkg.go.dev
View the API here https://www.dnd5eapi.co/
Using the package is as easy as create client, pick the endpoint, and run the method. This applies across every data type, so it is consistent across the board. Here's a simple example of how to fetch a rule from the DnD 5e ruleset.
func main() {
// Create a dnd client
c := dnd.NewClient()
// Fetch DnD rules about adventuring
r, _ := c.Rules.Find("adventuring")
// Print out the rule's name
fmt.Println("Name", r.Name)
}
For example uses of the package, check out the example directory
If you'd like to contribute to DnD, make sure you have mage installed: https://magefile.org
# Download dependencies and run tests
go run main.go download
go test ./...
Social image by Ashley Mcnamara https://twitter.com/ashleymcnamara 💖