One registry, 200+ experiences: how the QRFlow catalog works
Why we store QR types as data instead of code — and what that means for how fast the catalog grows.
Most QR tools hardcode their type list. Every new type means new forms, new routes, new releases. That's why their catalogs grow by a couple of types per year.
QRFlow stores its catalog in an experience registry — a database of every type the platform supports, with its category, setup fields, encoding template, and capability flags: does it support static codes, analytics, the canvas builder, access gates, premium-only availability?
The create flow simply reads the registry. When you open a type, its form is generated from the registry's field definitions; when you save, the encoding is produced from its template. Adding a new type is a data change, not a software release — which is how the catalog reached 200+ types across 20+ categories.
The flags matter just as much as the fields. They let us gate features honestly: the canvas builder appears only for types that render hosted pages, static generation only where offline encoding makes sense. And they give us a clean path to beta releases, per-plan availability, and eventually a marketplace of community-built experiences.
The lesson we keep re-learning: platforms beat features. Every time we move something from code into the registry, the whole product gets easier to grow.
Try QRFlow free
Your first dynamic QR code takes about two minutes.
Keep reading
Introducing QRFlow: the QR Infrastructure Platform
The QR code is not the product — the experience behind it is. Why we built one platform instead of fifty QR tools.
Dynamic vs. static QR codes: what actually happens when someone scans
One encodes data, the other encodes a promise. Understanding the difference is the key to printing with confidence.