BoilerWorks

boilerworks / docs / cli / init.md
1
# boilerworks init
2
3
Generate a project from a `boilerworks.yaml` manifest.
4
5
```bash
6
boilerworks init
7
boilerworks init --manifest path/to/boilerworks.yaml
8
boilerworks init --output ~/repos/
9
boilerworks init --dry-run
10
```
11
12
## Options
13
14
| Option | Description |
15
|--------|-------------|
16
| `--manifest PATH` | Manifest file to read (default: `boilerworks.yaml` in cwd) |
17
| `--output PATH` | Where to create the project directory (default: `.`) |
18
| `--dry-run` | Print what would happen without touching the filesystem |
19
20
## What it does
21
22
1. Reads and validates `boilerworks.yaml`
23
2. Clones `ConflictHQ/boilerworks-{family}` → `{output}/{project}/`
24
3. Removes `.git/` from the clone
25
4. Runs string replacement across all text files: `boilerworks` → `{project}` (3 case variants)
26
5. Renames files and directories containing `boilerworks`
27
6. If `ops: true` and `cloud` is set:
28
- Clones `ConflictHQ/boilerworks-opscode`
29
- Standard topology: places it at `{output}/{project}-ops/`
30
- Omni topology: places it at `{output}/{project}/ops/`
31
- Writes `{cloud}/config.env` with project name, region, domain
32
7. Runs `git init` + initial commit
33
34
## Clone auth
35
36
The CLI tries SSH first, then HTTPS:
37
38
```
39
[email protected]:ConflictHQ/boilerworks-{family}.git ← tried first
40
https://github.com/ConflictHQ/boilerworks-{family}.git ← fallback
41
```
42
43
## Dry run example
44
45
```bash
46
boilerworks init --dry-run
47
48
1. Clone ConflictHQ/boilerworks-django-nextjs
49
2. Remove .git/ from cloned directory
50
3. Replace all 'boilerworks' → 'my-app' (case-variant)
51
4. Rename files/dirs containing 'boilerworks'
52
5. Update CLAUDE.md and README.md headers
53
6. git init + initial commit in /Users/me/repos/my-app
54
7. Clone ConflictHQ/boilerworks-opscode → /Users/me/repos/my-app-ops
55
8. Render + rename ops files (boilerworks → my-app)
56
9. Write aws/config.env (project, region, domain)
57
10. git init ops repo in /Users/me/repos/my-app-ops
58
59
Output directory: /Users/me/repos/my-app
60
```
61

Keyboard Shortcuts

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