---
title: "Setting Up a Dev Environment"
image: "https://docs.virdx.dev/img/virdx-social-card.png"
---

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

# Setting Up a Dev Environment

Make sure you have `just` and `pixi` installed.

```bash
pixi global install just
```

## Quick Start

From the repo root, run the postinstall routine:

```bash
just postinstall
```

This will copy required `.env` files into `apps/vxdata-api/deployments/dev/` and pre-populate them with sensible defaults. Adapt as needed (in particular `HOST_URL` and the S3 settings).

Then launch the local dev stack:

```bash
just deploy
```

This is a fully native stack - no Docker required. A `process-compose` supervisor starts a Postgres process and the FastAPI app directly from the project's pixi env, using the same `.env` / `.env.secrets` files. Postgres data is stored under `apps/vxdata-api/deployments/dev/.runtime/`.

Services become available at the ports configured in `.env` (`HOST_API_PORT`, `HOST_POSTGRES_PORT`).

## Common Commands

```bash
just deploy                  # start native API + Postgres
just cleanup                 # stop the stack and wipe the local Postgres data
just import-backup-file ...  # restore a pg_dump into the local Postgres
```

### Loading Data from Backup

For a realistic local dev experience, you can inject a backup dump of the real production vxData postgres into your local postgres. 
Download it from the backup location, and point the `import-backup-file` command to the file:

```bash
just import-backup-file --path=./my-backup.dump
```

### Configuring the S3 backend

The dev stack does not run a local MinIO. The API still needs an S3-compatible endpoint to start. Configure one (for example a shared internal MinIO) via the env files:

```bash
# in apps/vxdata-api/deployments/dev/.env
S3_ENDPOINT=http://192.168.10.101:10000
S3_BUCKET=dataplatform-dev

# in apps/vxdata-api/deployments/dev/.env.secrets
S3_ACCESS_KEY=<your_access_key>
S3_SECRET_KEY=<your_secret_key>
```

Source: https://docs.virdx.dev/documentation/vxdata-api/guides/developing/index.mdx
