CheckOps home

Tools directory

F

CheckOps

Fishery

Fishery is an MIT-licensed TypeScript-first library from thoughtbot for defining factories that build JavaScript objects for tests, modelled on Ruby's factory_bot.

Visit website

Latest public signals

Not refreshed yet. Refresh reads the public site and, when the entry has a GitHub repository, the latest release.

Visit Website

Introduction

Fishery is a library for setting up JavaScript objects for tests and anywhere else you need data. It is loosely modelled on Ruby’s factory_bot and built with TypeScript in mind: factories accept typed parameters and return typed objects, so test data stays valid, according to its README.

A factory is a function that returns an object. Fishery passes helpers such as a sequence number, params, associations and transient parameters. Factories can be extended, combined with traits-like methods, build lists with buildList, and run onCreate hooks for persistence. It pairs naturally with Faker for realistic values.

Release v2.4.0 shipped in December 2025.

In the quality loop it supports unit and integration tests in JavaScript.

The source code is at thoughtbot/fishery on GitHub under the MIT licence, with about 1,000 stars; the most recent commit was on 8 December 2025.

Features

  1. Typed factories: TypeScript-first.
  2. Sequences: Unique values.
  3. Associations: Build related objects.
  4. buildList: Many objects at once.
  5. onCreate hooks: Persist objects.

Pros

  1. Clean API: Familiar to factory_bot users.
  2. Free to use: Open source under the MIT licence, so the core tool costs nothing to use.
  3. Actively maintained: The repository had commits as recent as 8 December 2025.

Cons

  1. Slower release cadence: Last release December 2025.
import { Factory } from 'fishery';
const userFactory = Factory.define<User>(({ sequence }) => ({ id: sequence, name: 'Ada' }));
const users = userFactory.buildList(3);

Resources:

Pricing

Fishery is free and open source under the MIT licence.

  1. TypeScript teams wanting typed factories.
  2. Not a fit without TypeScript benefits in mind.

Conclusion

Fishery is a tidy, typed factory library for JavaScript tests.

On CheckOps, Fishery is filed under the Unit testing stage. Related tools listed here include factory_bot, Faker (JavaScript), Polyfactory, Model Bakery, factory_boy and AutoFixture. Before choosing, compare them on licence, supported languages and platforms, hosting model, and how well each fits your existing CI pipeline. Facts on this page were checked against the official website, documentation and repository on 11 November 2026; statements the vendor makes about its own product are marked as vendor claims.

Alternatives

Other tools on CheckOps that cover similar ground. Open a page, or compare one with Fishery side by side.