BoilerWorks

boilerworks / docs / getting-started / configuration.md
Source Blame History 74 lines
6f83112… anonymous 1 # Configuration
6f83112… anonymous 2
6f83112… anonymous 3 ## boilerworks.yaml
6f83112… anonymous 4
6f83112… anonymous 5 The manifest file that drives `boilerworks init`. Created by `boilerworks setup`, or write it by hand.
6f83112… anonymous 6
6f83112… anonymous 7 ```yaml
6f83112… anonymous 8 project: my-app
6f83112… anonymous 9 family: django-nextjs
6f83112… anonymous 10 size: full
6f83112… anonymous 11 topology: standard
6f83112… anonymous 12 cloud: aws
6f83112… anonymous 13 ops: true
6f83112… anonymous 14 region: us-east-1
6f83112… anonymous 15 domain: myapp.com
6f83112… anonymous 16 mobile: false
6f83112… anonymous 17 web_presence: false
6f83112… anonymous 18 compliance:
6f83112… anonymous 19 - soc2
6f83112… anonymous 20 services:
6f83112… anonymous 21 email: ses
6f83112… anonymous 22 storage: null
6f83112… anonymous 23 search: null
6f83112… anonymous 24 cache: redis
6f83112… anonymous 25 data:
6f83112… anonymous 26 database: postgres
6f83112… anonymous 27 migrations: true
6f83112… anonymous 28 seed_data: true
6f83112… anonymous 29 testing:
6f83112… anonymous 30 e2e: playwright
6f83112… anonymous 31 unit: true
6f83112… anonymous 32 integration: true
6f83112… anonymous 33 template_versions: {}
6f83112… anonymous 34 ```
6f83112… anonymous 35
6f83112… anonymous 36 ## Fields
6f83112… anonymous 37
6f83112… anonymous 38 | Field | Type | Description |
6f83112… anonymous 39 |-------|------|-------------|
6f83112… anonymous 40 | `project` | string | Slug — lowercase, letters/digits/hyphens |
6f83112… anonymous 41 | `family` | string | Template name from `boilerworks list` |
6f83112… anonymous 42 | `size` | `full` \| `micro` \| `edge` | Template size |
6f83112… anonymous 43 | `topology` | `standard` \| `omni` \| `api-only` | Project structure |
6f83112… anonymous 44 | `cloud` | `aws` \| `gcp` \| `azure` \| null | Cloud provider for infra |
6f83112… anonymous 45 | `ops` | bool | Include boilerworks-opscode |
6f83112… anonymous 46 | `region` | string | Cloud region |
6f83112… anonymous 47 | `domain` | string | App domain |
6f83112… anonymous 48 | `mobile` | bool | Include mobile template (Full only) |
6f83112… anonymous 49 | `web_presence` | bool | Include marketing site (Full only) |
6f83112… anonymous 50 | `compliance` | list | `soc2`, `hipaa`, `pci-dss`, `gdpr` |
6f83112… anonymous 51
6f83112… anonymous 52 ## Topologies
6f83112… anonymous 53
6f83112… anonymous 54 **Standard** (default) — separate directories:
6f83112… anonymous 55 ```
6f83112… anonymous 56 my-app/ ← app repo (git init'd)
6f83112… anonymous 57 my-app-ops/ ← Terraform repo (git init'd, if ops=true)
6f83112… anonymous 58 ```
6f83112… anonymous 59
6f83112… anonymous 60 **Omni** — single repo:
6f83112… anonymous 61 ```
6f83112… anonymous 62 my-app/
6f83112… anonymous 63 ...app files...
6f83112… anonymous 64 ops/ ← Terraform lives here
6f83112… anonymous 65 ```
6f83112… anonymous 66
6f83112… anonymous 67 **API-only** — no frontend:
6f83112… anonymous 68 ```
6f83112… anonymous 69 my-app/ ← backend only
6f83112… anonymous 70 ```
6f83112… anonymous 71
6f83112… anonymous 72 ## annotated example
6f83112… anonymous 73
6f83112… anonymous 74 See [`boilerworks.yaml.example`](https://github.com/ConflictHQ/boilerworks/blob/main/boilerworks.yaml.example) in the repo for a fully annotated manifest with all fields and their defaults.

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button