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

# Installation

This guide installs the SpurtCommerce v6 backend from source. Follow the README in the exact release/tag being deployed; do not assume the moving `master` branch is identical to a packaged release.

## Prerequisites

The repository README currently specifies Node.js **v22.23.1**, npm **10.9.8 or later**, MySQL, and Git. Confirm the required versions against the release tag and your operating system.

```bash theme={null}
node -v
npm -v
mysql --version
git --version
```

## Get the source

```bash theme={null}
git clone https://github.com/spurtcommerce/spurtcommerce.git
cd spurtcommerce
```

For a production or reproducible installation, check out the intended release tag or commit before installing dependencies.

## Install dependencies

```bash theme={null}
npm install
```

Use the lockfile supplied by the release. Avoid deleting or regenerating it as part of routine deployment.

## Configure the environment

Create the project-root `.env` from `.env.example` and fill in environment-specific values. See [ENV setup](https://docs.spurtcommerce.com/Developers/ENV%20setup). Do not commit `.env`.

At minimum, review the application host/port, tenant/application identifiers, database connection, logging, API documentation, mail, storage, and security secret settings.

## Database

Create an empty MySQL database and a dedicated application user with only the privileges required by the application and migration process. Import the supplied SQL dump only if it belongs to the same release and edition. Review [Database](https://docs.spurtcommerce.com/Developers/Database) and [migrations](https://docs.spurtcommerce.com/Developers/migrations).

## Start the application

The repository README's quick-start section documents:

```bash theme={null}
npm start serve
```

Use the command defined by the checked-out release's `package.json` and scripts as the final authority. Do not substitute a different command based on an older guide. Confirm the listening port from `APP_PORT`/application configuration and inspect startup logs.

## Verify the installation

1. Confirm the process starts without configuration or database errors.
2. Confirm the health/status monitor only if enabled and protected in your environment.
3. Confirm the API documentation route configured by `APIDOC_ENABLED` and `APIDOC_ROUTE` (the repository template defaults to `/apidoc`).
4. Execute a read-only request against a known route from the same release.
5. Test login and tenant resolution using non-production test accounts.

## Production cautions

Use TLS, managed secrets, backups, least-privilege database credentials, a process supervisor, log rotation, and a tested rollback. Do not expose monitor or Swagger credentials, database ports, or debug logs publicly.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.