@sturlen/open5e-ts
TypeScript icon, indicating that this package has built-in type declarations

1.1.0 • Public • Published

Makes working with Open5e data in Typescript a breeze. All data is validated using Zod schemas, which gives high quality autocomplete your editor and full runtime safety. Usable on client and server.

Supports the following API endpoints:

  • Monsters
  • Spells
  • Classes
  • Magic Items
  • Races

Install

npm install @sturlen/open5e-ts
pnpm install @sturlen/open5e-ts

Usage

import { Open5e } from "@sturlen/open5e-ts"

const api = new Open5e()

// Query up to 50 dragons from the Tome of Beasts books.
const dragons = await api.monsters.findMany({
    limit: 50,
    document__slug: ["tob", "tob2", "tob3"],
    search: "dragon",
})

// Use the result as you see fit
dragons.forEach((monster) => console.log("Challenge: " + monster.challenge_rating))


// Get a specific item by it's id/slug
const spell = await api.spells.get("cure-wounds")

console.log(spell.range) // Touch

// You can access the Zod schemas and use them separately
api.monsters.schema.parse(YourObject)

References

Open5e Site Open5e API

Readme

Keywords

Package Sidebar

Install

npm i @sturlen/open5e-ts

Weekly Downloads

9

Version

1.1.0

License

MIT

Unpacked Size

190 kB

Total Files

17

Last publish

Collaborators

  • sturle