> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vulpy.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Install Vulpy Commerce on your machine

> Set up Vulpy Commerce locally with pnpm bootstrap, understand the .data layout, and configure data directory overrides for NTFS or exFAT hosts.

Installing Vulpy Commerce locally means bootstrapping the storefront, Medusa, Postgres, and the seed data, then optionally starting Fox on top. This page covers the full local flow and the data directory options you may need on non-ext4 hosts.

<Tip>
  **The fastest path is to ask Fox.** Once the bootstrap is done and Fox is up, the WebUI walks you through the rest and can fix drift for you.

  Try prompts like:

  * "Set up my `.env` for local dev."
  * "Move Postgres data to `/mnt/data`."
  * "Run `pnpm bootstrap` and tell me if anything failed."
</Tip>

## Prerequisites

* Node.js 20 or newer
* pnpm 9 or newer
* Docker with the Compose plugin

## Bootstrap

`pnpm bootstrap` is the full first-time setup. It writes env files, installs dependencies, starts Postgres and Redis, runs Medusa migrations, seeds the catalog, creates an admin user, and syncs the publishable key.

<CodeGroup>
  ```bash Full bootstrap theme={null}
  pnpm bootstrap
  ```

  ```bash Env files only theme={null}
  pnpm bootstrap:env
  ```

  ```bash Equivalent script theme={null}
  ./scripts/init-project.sh
  ```
</CodeGroup>

Use `pnpm bootstrap:env` when you only need env files and want to skip Docker.

## Day-to-day commands

<CodeGroup>
  ```bash Start storefront and Medusa theme={null}
  pnpm dev
  ```

  ```bash Start Fox (Hermes) theme={null}
  pnpm db:hermes:up
  ```

  ```bash Stop Fox theme={null}
  pnpm db:hermes:down
  ```

  ```bash Optional local Matomo theme={null}
  pnpm db:matomo:up
  ```

  ```bash Wipe and reseed theme={null}
  pnpm db:reseed
  ```
</CodeGroup>

<Warning>
  `pnpm db:reseed` wipes `.data/postgres` and recreates the databases. Do not run it against a shop that has real data you care about.
</Warning>

## Data layout

All Docker persistence lives under `.data/` in the project folder. `.data/` is gitignored.

```text theme={null}
.data/
├── postgres/       # PostgreSQL (dev + prod)
├── redis/
├── medusa-static/  # production uploads
├── payload-media/  # production CMS media
├── matomo/         # production Matomo app files
├── matomo-db/      # production Matomo MariaDB
└── ...
```

<Note>
  On NTFS or exFAT hosts (for example, a `/mnt/data` external drive), Postgres, Redis, and Matomo (app plus MariaDB) auto-fall back to `~/.local/share/<project>/…`. Override with `POSTGRES_DATA_DIR`, `REDIS_DATA_DIR`, `MATOMO_DATA_DIR`, and `MATOMO_DB_DATA_DIR` in `.env`.
</Note>

## Multiple shops on one host

`COMPOSE_PROJECT_NAME` defaults to the project folder name, so you can clone Vulpy Commerce into two folders on the same machine and run them side by side without container name collisions. Set it explicitly in `.env` if you rename a checkout.

<CardGroup cols={2}>
  <Card title="Quickstart" icon="rocket" href="/quickstart">
    A compact version of this flow that gets you to the WebUI fast.
  </Card>

  <Card title="Architecture" icon="layer-group" href="/architecture">
    See how the storefront, Medusa, Fox, and Matomo fit together.
  </Card>
</CardGroup>
