New minipim 1.0 — the open-source PIM is here Read the launch →
minipım
Open-source · Headless PIM · TypeScript

One register for
everything you sell.

Model your products once. Publish them everywhere — with a per-channel readiness score that shows exactly what each surface still needs before you ship. New attributes are data, not migrations.

★ 3.8k starsAGPL-3.0Open source on GitHub
Deploy in an afternoon AGPL-3.0 licensed API-first, event-driven
app.minipim.com / products / cedar-crew-sweater
Products / Apparel / Cedar Crew Sweater
Saved 2m ago Publish
Cedar Crew Sweater
CDR-CRW-018 Draft · 6 variants
ENFR
Attributes Variants Media History
EnglishFrançais
Add attribute
Title
text en · fr
Cedar Crew Sweater
Material
select
100% Merino Wool ×
Price
money 4 markets
USD148.00US · CA · UK · EU
Net weight
measurement
Add a value — required by Amazon & Walmart Needed
Care guide
richtext en · fr
BIH
Machine wash cold on a gentle cycle. Lay flat to dry to preserve the merino fibres. Do not bleach or tumble dry.
Gallery
media 5 assets
One source of truth · publish everywhere your customers shop
Amazon Walmart Shopify BigCommerce Throttle More

No. 01 The schema

A catalog is just typed attributes, modeled well.

Products and variants attach to families of typed, localizable, channel-scopable attributes — text, measurement, money, select, richtext, media. The schema is the product.

01

Adding an attribute is data.

Define a field in the UI or over the API. No migration, no deploy, no schema-change ticket waiting on engineering.

02

Validating it is a Zod schema.

Every family compiles to a Zod validator generated from its own definition — so data is correct before it leaves your catalog.

03

Syndicating it is an event.

Each mutation emits a typed event. A connector is just something that subscribes to it. Nothing is bolted on.

Attribute family · apparel6 fields
AttributeTypeLocaleScope
titletexten · frall
materialselecten · frall
pricemoneyall
net_weightmeasureamazon · walmart
care_guiderichtexten · frstorefront
gallerymediaall
apparel.schema.ts · generated
// generated from the attribute family — never hand-written
  export const Apparel = z.object({
    title:      z.record(Locale, z.string().min(1)),
    material:   MaterialEnum,
    price:      z.record(Market, Money),
    net_weight: Measurement.optional(),
    gallery:    z.array(MediaRef),
  });

No. 02 Channel readiness

Fill it in once. Every surface tells you what it still needs.

A merchandiser completes a product's attributes; a per-channel score shows exactly what each surface is missing — before you publish, not after a rejection.

Cedar Crew Sweater
CDR-CRW-018 · Apparel
80%
Overall
Cs Custom Storefront
100%
Ready
Sh Shopify
90%
+ GTIN ×2
Am Amazon
75%
+ 3 fields
Bc BigCommerce
55%
+ 3 fields
2 of 4 channels ready to publish Publish ready

Per-channel, not lowest common denominator.

Amazon wants bullets and A+ content; BigCommerce wants a shipping weight; Shopify wants a GTIN. Each score is computed against that channel's own rules.

Caught before the rejection.

Readiness validates from the same Zod schemas that back your data, so a surface can never ask for something your catalog can't describe.

Publish, and connectors carry it out.

When a channel reads 100%, publishing emits the events its connector already listens for. Your catalog stays the source of truth.

No. 03 Honest comparison

Twenty years, billions raised — and most merchants still run their catalog in a spreadsheet.

The PIM category went enterprise and never came back. minipim is the one the rest of us should have had all along — open source, an afternoon to stand up, free to start.

minipım
Akeneo Growth
Plytix
Starting price
$0
$25,000 /yr
$1,800 /yr
Setup
An afternoon
An implementation project
A sales call
Source code
Open on GitHub
Closed
Closed
Stack
Node · Postgres · TypeScript
PHP · Symfony
Closed
Try it
docker compose up
Schedule a demo
Schedule a demo

No. 04 Connectors

Every channel is a subscriber.

Connectors subscribe to the events your mutations emit. minipim pairs natively with Throttle, our open-source commerce engine — or with any storefront via the open API and event bus. Maintenance-heavy marketplaces are managed for you in Hosted.

ThLive
Throttle
Native open-source commerce engine
BcLive
BigCommerce
Catalog + price sync · the original app
</>Live
REST + GraphQL API
Read your catalog from anywhere
{ }Live
Webhooks
Subscribe to any event · build your own
ShBeta
Shopify
Products + metafields
AmPlanned
Amazon
SP-API · listings + A+ · Hosted
WmPlanned
Walmart
Marketplace item spec · Hosted
More coming
Vote on the roadmap

No. 05 Enrichment · on the roadmap

One person manages what a team used to.

AI enrichment is built in — it drafts copy, normalizes messy attributes, translates locales, and fills the exact gaps the readiness score flags. You review and accept.

Readiness gap · Amazon Missing bullet points — required for this category.
Suggested · drafted from your attributes • 100% merino wool, milled in Portugal
• Regular fit with a ribbed crew neckline
• Machine washable cold · lay flat to dry
✓ Accept & apply Amazon 75% → 92%

Pricing

Self-host it, or let us run it.

The whole engine is open source. Pay only when you want the managed connectors and auth.

Open Source

Self-hosted

Free forever · AGPL-3.0

The complete schema engine and core connectors, on your own infrastructure.

  • Full attribute & variant schema engine
  • Generated Zod validation + event bus
  • Live connectors: Throttle, BigCommerce, API & Webhooks
  • Bring your own auth & database
Clone from GitHub
Hosted

Managed

Usage-based · start free

Everything in open source, fully managed — plus the connectors that are a pain to run yourself.

  • Managed infra, backups & upgrades
  • Managed marketplace connectors: Amazon, Walmart & more
  • Clerk-backed auth, SSO & team roles
  • AI enrichment & priority support
Start free

Stand up minipim in an afternoon.

Clone from GitHub and self-host, or start free on Hosted and add the heavy connectors when you need them.

r="middle">mip