Fishing & Mining

Bait & Tackle

Access fishing bait and tackle item data, sortable by name and sell price.

Quick Start

import { bait, tackle } from 'stardew-valley-data'

// All bait types
const allBait = bait().get()

// All tackle types sorted by sell price
const allTackle = tackle().sortBySellPrice().get()

// Find specific items
const magnet = bait().findByName('Magnet')
const spinner = tackle().findByName('Spinner')

Bait

Type Definition

interface Bait {
  id: string
  name: string
  description: string
  sellPrice: number
  image: string
}

Field Reference

FieldTypeDescription
idstringUnique identifier.
namestringDisplay name (e.g. "Bait", "Magnet").
descriptionstringIn-game description text.
sellPricenumberBase sell price in gold.
imagestringPath to the image asset.

Bait Query Methods

The bait() function returns a BaitQuery instance. All methods return a new BaitQuery for chaining.

Inherited Methods

MethodReturnsDescription
.get()Bait[]Return all results as an array.
.first()Bait | undefinedReturn the first result.
.find(id)Bait | undefinedFind by exact ID.
.findByName(name)Bait | undefinedFind by name (case-insensitive).
.count()numberReturn the number of results.

Sort Methods

MethodSignatureDefaultDescription
sortByNamesortByName(order?: 'asc' | 'desc')'asc'Sort alphabetically by name.
sortBySellPricesortBySellPrice(order?: 'asc' | 'desc')'desc'Sort by sell price (most valuable first).

Tackle

Type Definition

interface Tackle {
  id: string
  name: string
  description: string
  sellPrice: number
  image: string
}

Field Reference

FieldTypeDescription
idstringUnique identifier.
namestringDisplay name (e.g. "Spinner", "Trap Bobber").
descriptionstringIn-game description text.
sellPricenumberBase sell price in gold.
imagestringPath to the image asset.

Tackle Query Methods

The tackle() function returns a TackleQuery instance. All methods return a new TackleQuery for chaining.

Inherited Methods

MethodReturnsDescription
.get()Tackle[]Return all results as an array.
.first()Tackle | undefinedReturn the first result.
.find(id)Tackle | undefinedFind by exact ID.
.findByName(name)Tackle | undefinedFind by name (case-insensitive).
.count()numberReturn the number of results.

Sort Methods

MethodSignatureDefaultDescription
sortByNamesortByName(order?: 'asc' | 'desc')'asc'Sort alphabetically by name.
sortBySellPricesortBySellPrice(order?: 'asc' | 'desc')'desc'Sort by sell price (most valuable first).

Examples

List all bait with descriptions

import { bait } from 'stardew-valley-data'

bait()
  .sortByName()
  .get()
  .forEach((b) => {
    console.log(`${b.name}: ${b.description}`)
  })

Compare tackle by sell price

import { tackle } from 'stardew-valley-data'

const sorted = tackle().sortBySellPrice().get()

sorted.forEach((t) => {
  console.log(`${t.name}: ${t.sellPrice}g`)
})

Count available bait and tackle

import { bait, tackle } from 'stardew-valley-data'

console.log(`${bait().count()} bait types, ${tackle().count()} tackle types`)
Previous
Fish