vulpy-io/vulpy-commerce-core

AI-run shop: Medusa v2 + Next.js + Payload CMS operated by Fox, the built-in AI assistant. Open-source free edition of Vulpy Commerce.

JavaScript

60

0 commits

updated Sep 16, 2026

See the code
ai-agent
ecommerce
medusa
nextjs
payload-cms

See what people are saying (1)

SourceMessageScoreDate

I’m open-sourcing Medusa + Payload + Next.js system with an AI agent that can work across the whole stack (r/webdev)

I've spent the last two years figuring out what happens when you build real web projects AI-first, rather than bolting a chatbot onto them afterwards. This week I open-sourced the result: Vulpy Commerce. It's a full ecommerce stack built on Medusa v2 + Payload CMS + Next.js + Orama + Matomo, with…

0

Sep 19, 2026

README

Vulpy Commerce

vulpy.io/commerce — product site, docs, and pricing for Vulpy Commerce.

Vulpy Commerce is an AI-run shop: the open-source Medusa v2 + Next.js + Payload CMS ecommerce stack, operated by Fox, the built-in AI assistant (Hermes agent + Vulpy WebUI). Fox sets up the store, runs it day to day (catalog, content, orders, analytics), and guides you through setup and ongoing operation.

  • Core — free, public edition.
  • Starter Pack and Multi-Agent Pack — paid add-ons.
  • Pro — private commercial edition, includes both add-ons.

Portable monorepo; use this repo as the upstream, each shop is a copy with its own .data/ directory and COMPOSE_PROJECT_NAME. See TEMPLATE.md for creating a new shop and VPS deployment.

Tech Stack

  • Next.js storefront (@apps/storefront) — NextMerce UI + Medusa + Payload CMS
  • Medusa v2 backend + PostgreSQL + Redis (Docker)
  • Self-hosted Matomo (production) — consent-gated ecommerce analytics; see AGENTS.md and deploy/README.md
  • In-process Orama product search (Medusa productSearch module)

Prerequisites

  • Node.js 22 LTS (20+ supported)
  • pnpm 10.15.0
  • Docker (Compose plugin)

Quick Start

pnpm bootstrap    # env files, pnpm install, DB, migrate, seed, admin, publishable key
pnpm dev

# In another terminal, while dev is running:
pnpm --filter @apps/storefront seed   # Payload CMS content

Data layout

All Docker persistence lives under .data/ (gitignored):

.data/
├── postgres/       # PostgreSQL (dev + prod)
├── redis/
├── medusa-static/  # prod uploads
├── payload-media/  # prod CMS media
├── matomo/         # prod Matomo app files
├── matomo-db/      # prod Matomo MariaDB
└── ...

On NTFS/exFAT hosts (e.g. /mnt/data), Postgres, Redis, and Matomo (app + MariaDB) auto-fall back to ~/.local/share/<project>/…. Override with POSTGRES_DATA_DIR / REDIS_DATA_DIR / MATOMO_DATA_DIR / MATOMO_DB_DATA_DIR in .env.

COMPOSE_PROJECT_NAME defaults to the folder name so multiple shops can run on one machine without container conflicts.

Scripts

CommandDescription
pnpm bootstrapFull bootstrap: env, install, DB, migrate, seed, admin, publishable key
pnpm bootstrap:envCopy .env files only (no Docker)
./scripts/init-project.shSame as pnpm bootstrap
pnpm db:upStart PostgreSQL + Redis
pnpm db:hermes:upOptional Hermes agent
pnpm db:matomo:up / db:matomo:downOptional local Matomo for analytics testing
pnpm db:downStop Docker services
pnpm db:resetWipe .data/postgres and recreate DBs
pnpm devDB + storefront + medusa-backend
pnpm buildBuild all apps
pnpm verify:docker:medusa-packagingPre-push guard: Medusa Dockerfile packages workspace deps (static; skip with SKIP_DOCKER_PACKAGING_VERIFY=1)

Agent guide (including how to add analytics events for new features): AGENTS.md

vulpy-io/vulpy-commerce-core

AI-run shop: Medusa v2 + Next.js + Payload CMS operated by Fox, the built-in AI assistant. Open-source free edition of Vulpy Commerce.

JavaScript

60

0 commits

updated Sep 16, 2026

See the code
ai-agent
ecommerce
medusa
nextjs
payload-cms

See what people are saying (1)

SourceMessageScoreDate

I’m open-sourcing Medusa + Payload + Next.js system with an AI agent that can work across the whole stack (r/webdev)

I've spent the last two years figuring out what happens when you build real web projects AI-first, rather than bolting a chatbot onto them afterwards. This week I open-sourced the result: Vulpy Commerce. It's a full ecommerce stack built on Medusa v2 + Payload CMS + Next.js + Orama + Matomo, with…

0

Sep 19, 2026

README

Vulpy Commerce

vulpy.io/commerce — product site, docs, and pricing for Vulpy Commerce.

Vulpy Commerce is an AI-run shop: the open-source Medusa v2 + Next.js + Payload CMS ecommerce stack, operated by Fox, the built-in AI assistant (Hermes agent + Vulpy WebUI). Fox sets up the store, runs it day to day (catalog, content, orders, analytics), and guides you through setup and ongoing operation.

  • Core — free, public edition.
  • Starter Pack and Multi-Agent Pack — paid add-ons.
  • Pro — private commercial edition, includes both add-ons.

Portable monorepo; use this repo as the upstream, each shop is a copy with its own .data/ directory and COMPOSE_PROJECT_NAME. See TEMPLATE.md for creating a new shop and VPS deployment.

Tech Stack

  • Next.js storefront (@apps/storefront) — NextMerce UI + Medusa + Payload CMS
  • Medusa v2 backend + PostgreSQL + Redis (Docker)
  • Self-hosted Matomo (production) — consent-gated ecommerce analytics; see AGENTS.md and deploy/README.md
  • In-process Orama product search (Medusa productSearch module)

Prerequisites

  • Node.js 22 LTS (20+ supported)
  • pnpm 10.15.0
  • Docker (Compose plugin)

Quick Start

pnpm bootstrap    # env files, pnpm install, DB, migrate, seed, admin, publishable key
pnpm dev

# In another terminal, while dev is running:
pnpm --filter @apps/storefront seed   # Payload CMS content

Data layout

All Docker persistence lives under .data/ (gitignored):

.data/
├── postgres/       # PostgreSQL (dev + prod)
├── redis/
├── medusa-static/  # prod uploads
├── payload-media/  # prod CMS media
├── matomo/         # prod Matomo app files
├── matomo-db/      # prod Matomo MariaDB
└── ...

On NTFS/exFAT hosts (e.g. /mnt/data), Postgres, Redis, and Matomo (app + MariaDB) auto-fall back to ~/.local/share/<project>/…. Override with POSTGRES_DATA_DIR / REDIS_DATA_DIR / MATOMO_DATA_DIR / MATOMO_DB_DATA_DIR in .env.

COMPOSE_PROJECT_NAME defaults to the folder name so multiple shops can run on one machine without container conflicts.

Scripts

CommandDescription
pnpm bootstrapFull bootstrap: env, install, DB, migrate, seed, admin, publishable key
pnpm bootstrap:envCopy .env files only (no Docker)
./scripts/init-project.shSame as pnpm bootstrap
pnpm db:upStart PostgreSQL + Redis
pnpm db:hermes:upOptional Hermes agent
pnpm db:matomo:up / db:matomo:downOptional local Matomo for analytics testing
pnpm db:downStop Docker services
pnpm db:resetWipe .data/postgres and recreate DBs
pnpm devDB + storefront + medusa-backend
pnpm buildBuild all apps
pnpm verify:docker:medusa-packagingPre-push guard: Medusa Dockerfile packages workspace deps (static; skip with SKIP_DOCKER_PACKAGING_VERIFY=1)

Agent guide (including how to add analytics events for new features): AGENTS.md

Languages

JavaScript

42.2%

TypeScript

32.6%

Python

16.2%

Shell

7.4%

CSS

1.3%