# How we use Couchbase with CouchSet

> Why I wanted a flexible document database and built an ORM that could generate the repetitive pieces of a modern backend.

Published: 2022-01-11

Canonical HTML: https://www.ceddy.org/blog/couchset

---

Product models move quickly. When every schema change needs a carefully managed migration, the data layer can become the slowest part of a product experiment.

MySQL and Postgres are excellent tools, but I wanted a database that made iteration fast while still supporting familiar, SQL-like querying. That led me to Couchbase: a strong MongoDB alternative with fast indexes and a low-friction transition for teams coming from relational databases.

## CouchSet

CouchSet began as an experiment and became an ORM for defining models and letting the surrounding plumbing follow from those definitions.

From a single object definition, CouchSet could generate common CRUD operations and provide GraphQL-friendly pagination queries. The goal was simple: spend less time repeating the same backend scaffolding, and more time shaping the product.

I used it across projects, including RoadmanJS, whenever I wanted a fast path from an idea to a working data model.

[Watch the CouchSet walkthrough on YouTube](https://www.youtube.com/watch?v=KpSPVvOuRGM)
