run-stack 0.4.3

One command to boot a full local stack in Docker: API, Vite apps, Expo mobile, desktop renderer, database, mail and a status dashboard.
Documentation
{
  "_comment": "Answer file for run-stack init --file. One object per section; a flat object of the same keys works too. Anything omitted is prompted for, or defaulted with --yes.",
  "_extra_apps": "Apps beyond the roles above: workspace names, space separated. Each gets <NAME>_PORT and <NAME>_CMD. run-stack init --update finds them for you.",
  "project": {
    "COMPOSE_PROJECT_NAME": "myapp",
    "PROJECT_LABEL": "My App"
  },
  "repositories": {
    "BACKEND_DIR": "./backend",
    "BACKEND_SUBDIR": "",
    "FRONTEND_DIR": "./frontend"
  },
  "backend": {
    "BACKEND_STACK": "node",
    "BACKEND_START_CMD": "pnpm dev",
    "BACKEND_MIGRATE_CMD": "npx prisma migrate deploy",
    "BACKEND_SEED_CMD": "npx prisma db seed",
    "BACKEND_HEALTH_PATH": "/api/health",
    "BACKEND_LOGIN_PATH": "/api/auth/login",
    "RUN_QUEUE": false,
    "RUN_SCHEDULER": false
  },
  "apps": {
    "WEB_APP": "web",
    "RUN_ADMIN": true,
    "ADMIN_APP": "admin",
    "RUN_LANDING": false,
    "RUN_MOBILE": true,
    "MOBILE_APP": "mobile-client",
    "RUN_DESKTOP": true,
    "DESKTOP_STACK": "electron",
    "DESKTOP_APP": "desktop",
    "EXTRA_APPS": ""
  },
  "infrastructure": {
    "DB_ENGINE": "postgres",
    "DB_DATABASE": "myapp",
    "DB_USERNAME": "myapp",
    "DB_PASSWORD": "secret",
    "RUN_REDIS": true,
    "RUN_MAILPIT": true,
    "RUN_MINIO": false
  },
  "essential": {
    "_comment": "Compose services started by: rst up --essential. Each key is a service; the value is reserved for options.",
    "backend": {},
    "postgres": {},
    "redis": {}
  },
  "deploy": {
    "DEPLOY_WEB_TARGET": "vercel",
    "DEPLOY_MOBILE_TARGET": "eas",
    "DEPLOY_DESKTOP_TARGET": "electron-builder",
    "DEPLOY_DEFAULT_ENV": "staging",
    "DEPLOY_ENVS": "staging production"
  },
  "ports": {
    "BACKEND_PORT": 8000,
    "WEB_PORT": 5173,
    "ADMIN_PORT": 5174,
    "DESKTOP_PORT": 5176,
    "MOBILE_CLIENT_PORT": 8081,
    "POSTGRES_PORT": 5434,
    "REDIS_PORT": 6380,
    "MAILPIT_UI_PORT": 8025,
    "DASHBOARD_PORT": 8090,
    "HOST_OPEN_PORT": 8091
  },
  "docker": {
    "DOCKER_MEMORY_LIMIT": "2g",
    "DOCKER_CPU_LIMIT": 2,
    "DOCKER_SHM_SIZE": "256m",
    "BACKEND_MEMORY_LIMIT": "4g",
    "BACKEND_CPU_LIMIT": 4,
    "FRONTEND_MEMORY_LIMIT": "2g",
    "FRONTEND_CPU_LIMIT": 2,
    "POSTGRES_MEMORY_LIMIT": "2g",
    "POSTGRES_CPU_LIMIT": 2,
    "MYSQL_MEMORY_LIMIT": "2g",
    "MYSQL_CPU_LIMIT": 2
  }
}