The commerce stack WooCommerce should have been — typed, sandboxed, edge‑native.
DashCommerce is the open‑source commerce plugin for EmDash CMS — the Astro-native, Cloudflare-first successor to WordPress. Products, subscriptions, multi-currency, marketplace payouts. No plugin sprawl. No transaction fees. No PHP.
No spam, no credit card, no Kickstarter. — Just a note when v0.1 ships.
- 0 kb
- shipped JavaScript by default
- 0 %
- transaction fees to us, ever
- 100 %
- open source, MIT licensed
// one line. a real database. no plugins to vet.
import { dashcommerce } from "@dashcommerce/core";
emdash({
plugins: [dashcommerce()],
});
Twenty‑two years
of duct tape.
WooCommerce wasn't architected — it accreted. Every shop owner learns the bill after year one.
- 01 security96%of WordPress vulns come from plugins
A typical WooCommerce store runs 40+ plugins. Each one is a supply-chain risk that nobody audited.
- 02 cost$1,500+the annual extension bill
Subscriptions, bookings, memberships, gateways — every feature you thought was free turns out to be a yearly invoice.
- 03 performance814 kbof JS on an unmodified shop page
Themes fight plugins. Plugins fight themes. The user downloads the war.
- 04 fees1.9%transaction fee on top of Stripe
Some "open" alternatives charge you to move your own money. That's not open — that's rent.
- 05 stackPHPas a foundation, in 2026
WordPress runs the web it built, not the web we're shipping now. Edge, typed, and reactive is a retrofit there — it's the baseline here.
- 06 schema50+DB tables before you sell one thing
WooCommerce's schema is archaeological. DashCommerce is three typed collections and a Stripe event log.
Everything a real store needs. Nothing a real store doesn't.
No "extensions page." Subscriptions, marketplaces, multi-currency — all in the box, all typed end-to-end.
From a single SKU to
a vendor marketplace.
Simple · Variable (size/color/etc) · Grouped · External/affiliate · Digital download · Subscription. Defined in typed collections, indexed at build, served from the edge.
Prices in eight currencies, picked at cart.
Stripe Payment Intents.
Apple & Google Pay included.
Refunds & partial refunds, in‑dash.
Admin dashboard ships with full refund UI. Stripe events reconciled automatically.
Recurring, trials, upgrades, dunning.
Stripe Subscriptions wired to your products. Proration, lifecycle emails, all typed.
Marketplace payouts with a platform fee.
transfer_data + application_fee_amount. Turn any shop into a vendor platform.
Fixed/percent × cart/product, limits, exclusions.
Multi-zone, flat, weight, local pickup, free thresholds.
Soft-locks during checkout. No oversells. Low-stock alerts.
Moderation queue. Verified-purchase badges.
Receipt, refund, shipping, abandoned-cart, subscription lifecycle. Editable MJML templates.
Flat-rate by default. Stripe Tax wired in with one env var when you outgrow the default.
Addresses, order history, guest-cart merge on login. No WordPress user baggage.
A full storefront.
Clone. Configure. Ship.
@dashcommerce/starter is a reference Astro storefront that ships everything wired up — shop, product, cart,
checkout, account, subscriptions, thank-you. It's how we dogfood. It's how you start.
import { defineConfig } from "astro/config";
import emdash from "emdash/astro";
import { sqlite } from "emdash/db";
import { dashcommerce } from "@dashcommerce/core";
export default defineConfig(({
integrations: [
emdash({
database: sqlite({ url: "file:./data.db" }),
plugins: [dashcommerce()],
}),
],
}); Folded Linen
Scarf
Heavy‑weight Belgian linen, stone‑washed and garment‑dyed. Cut and sewn in Porto.
Built to replace your whole extensions page.
Compared at parity with each platform's default install. No extensions marketplace — none needed.
| Capability | DashCommerce edge · typed | WooCommerce PHP · 2011 | Shopify SaaS · Liquid | SureCart SaaS · WP | FluentCart PHP · 2024 |
|---|---|---|---|---|---|
| 01 Runs at the edge (Cloudflare Workers) | partial | partial | |||
| 02 Zero JS by default | |||||
| 03 Typed content collections | |||||
| 04 Subscriptions in core | paid add-on | ||||
| 05 Digital downloads in core | paid add-on | partial | |||
| 06 Marketplace payouts (Stripe Connect) | paid add-on | partial | |||
| 07 Multi-currency, per-product | paid add-on | partial | partial | ||
| 08 No platform transaction fee | |||||
| 09 Sandboxed plugin model | partial | ||||
| 10 Source-available, MIT | yes (GPL) |
Swipe to compare
↳ Apples-to-apples isn't always apples-to-apples. Anything marked “partial” has its caveats — ask us.
Four phases.
Shipped in public.
Dates are targets, not promises. Everything here is tracked as a GitHub milestone with tagged issues.
Founders build
Products (all 6 types), cart, Stripe Payment Intents, orders, admin dashboard, multi-currency, coupons, shipping, inventory soft-locks.
Revenue surface
Subscriptions with trials + dunning, transactional emails, reviews with moderation, Stripe Tax, digital downloads with signed URLs.
Marketplace
Stripe Connect with platform fee, multi-vendor orders + payouts, abandoned-cart recovery, low-stock alerts, wishlists.
Ecosystem
Plugin SDK, capability manifests, typed events, AI storefront (MCP), themes marketplace, first-party analytics sink.
Join the quiet waitlist.
We're not crowdfunding. We're not pre-selling. We're writing the code first, then letting a small group of EmDash users kick the tires on a real build — subscription billing, marketplace payouts, the works. Leave your email and we'll reach out when v0.1 is solid.
No spam, no credit card, no Kickstarter. — Just a note when v0.1 ships.