BoilerWorks

boilerworks / README.md
Source Blame History 204 lines
0cb4a5e… anonymous 1 # Boilerworks
0cb4a5e… anonymous 2
0cb4a5e… anonymous 3 **Production-ready project templates — assembled in seconds.**
0cb4a5e… anonymous 4
0cb4a5e… anonymous 5 Boilerworks is a CLI that clones and configures any of 26 opinionated, best-of-breed project templates. Stop re-solving auth, permissions, Docker, CI, and admin panels from scratch. Pick a stack, run `boilerworks init`, and get straight to your business logic.
0cb4a5e… anonymous 6
c5c5085… anonymous 7 ```bash
0cb4a5e… anonymous 8 pip install boilerworks
0cb4a5e… anonymous 9 boilerworks setup # interactive wizard → writes boilerworks.yaml
0cb4a5e… anonymous 10 boilerworks init # clone + configure the template
0cb4a5e… anonymous 11 cd my-project
0cb4a5e… anonymous 12 docker compose up -d # full stack running in seconds
0cb4a5e… anonymous 13 ```
0cb4a5e… anonymous 14
0cb4a5e… anonymous 15 ---
0cb4a5e… anonymous 16
0cb4a5e… anonymous 17 ## Installation
0cb4a5e… anonymous 18
0cb4a5e… anonymous 19 ```bash
0cb4a5e… anonymous 20 pip install boilerworks
0cb4a5e… anonymous 21 # or with uv:
0cb4a5e… anonymous 22 uv tool install boilerworks
0cb4a5e… anonymous 23 ```
0cb4a5e… anonymous 24
0cb4a5e… anonymous 25 Requires Python 3.12+.
0cb4a5e… anonymous 26
0cb4a5e… anonymous 27 ---
0cb4a5e… anonymous 28
0cb4a5e… anonymous 29 ## Quick Start
0cb4a5e… anonymous 30
0cb4a5e… anonymous 31 ### 1. Run the setup wizard
0cb4a5e… anonymous 32
0cb4a5e… anonymous 33 ```bash
0cb4a5e… anonymous 34 boilerworks setup
0cb4a5e… anonymous 35 ```
0cb4a5e… anonymous 36
0cb4a5e… anonymous 37 Answer 13 questions about your project (name, template, cloud, compliance, etc.) and a `boilerworks.yaml` manifest is written to the current directory.
0cb4a5e… anonymous 38
0cb4a5e… anonymous 39 ### 2. Generate the project
0cb4a5e… anonymous 40
0cb4a5e… anonymous 41 ```bash
0cb4a5e… anonymous 42 boilerworks init
0cb4a5e… anonymous 43 ```
0cb4a5e… anonymous 44
0cb4a5e… anonymous 45 Boilerworks clones the selected template, replaces all `boilerworks` references with your project name, and runs `git init` to give you a clean starting commit.
0cb4a5e… anonymous 46
0cb4a5e… anonymous 47 ### 3. Start developing
0cb4a5e… anonymous 48
0cb4a5e… anonymous 49 ```bash
0cb4a5e… anonymous 50 cd my-project
0cb4a5e… anonymous 51 docker compose up -d
0cb4a5e… anonymous 52 # Visit http://localhost:3000
0cb4a5e… anonymous 53 ```
0cb4a5e… anonymous 54
0cb4a5e… anonymous 55 One command. Full stack. No manual setup.
0cb4a5e… anonymous 56
0cb4a5e… anonymous 57 ---
0cb4a5e… anonymous 58
0cb4a5e… anonymous 59 ## Template Catalogue
0cb4a5e… anonymous 60
0cb4a5e… anonymous 61 26 templates across three sizes:
0cb4a5e… anonymous 62
0cb4a5e… anonymous 63 | Size | Description | Auth | Deploy Target |
0cb4a5e… anonymous 64 |------|-------------|------|---------------|
0cb4a5e… anonymous 65 | **Full** | Apps with users | Session auth, permissions, org management | VPS, containers, Kubernetes |
0cb4a5e… anonymous 66 | **Micro** | API services | API-key auth | VPS, containers |
0cb4a5e… anonymous 67 | **Edge** | Serverless apps | Flexible | Cloudflare Workers / Pages |
0cb4a5e… anonymous 68
0cb4a5e… anonymous 69 ### Full Templates (15)
0cb4a5e… anonymous 70
c5c5085… anonymous 71 | Name | Backend | Frontend |
c5c5085… anonymous 72 |------|---------|----------|
c5c5085… anonymous 73 | [django-nextjs](https://github.com/ConflictHQ/boilerworks-django-nextjs) | Django 5 | Next.js 16 |
c5c5085… anonymous 74 | [nestjs-nextjs](https://github.com/ConflictHQ/boilerworks-nestjs-nextjs) | NestJS 11 | Next.js 16 |
c5c5085… anonymous 75 | [rails-hotwire](https://github.com/ConflictHQ/boilerworks-rails-hotwire) | Rails 8 | Hotwire + Tailwind |
c5c5085… anonymous 76 | [rails-nextjs](https://github.com/ConflictHQ/boilerworks-rails-nextjs) | Rails 8 | Next.js 16 |
c5c5085… anonymous 77 | [spring-angular](https://github.com/ConflictHQ/boilerworks-spring-angular) | Spring Boot 3 | Angular 19 |
c5c5085… anonymous 78 | [go-nextjs](https://github.com/ConflictHQ/boilerworks-go-nextjs) | Go + Chi | Next.js 16 |
c5c5085… anonymous 79 | [phoenix-liveview](https://github.com/ConflictHQ/boilerworks-phoenix-liveview) | Phoenix 1.7 | LiveView |
c5c5085… anonymous 80 | [laravel-vue](https://github.com/ConflictHQ/boilerworks-laravel-vue) | Laravel 12 | Inertia + Vue 3 |
c5c5085… anonymous 81 | [django-htmx](https://github.com/ConflictHQ/boilerworks-django-htmx) | Django 5 | HTMX + Alpine.js |
c5c5085… anonymous 82 | [fastapi-nextjs](https://github.com/ConflictHQ/boilerworks-fastapi-nextjs) | FastAPI | Next.js 16 |
c5c5085… anonymous 83 | [spring-nextjs](https://github.com/ConflictHQ/boilerworks-spring-nextjs) | Spring Boot 3 | Next.js 16 |
c5c5085… anonymous 84 | [laravel-livewire](https://github.com/ConflictHQ/boilerworks-laravel-livewire) | Laravel 12 | Livewire 3 |
c5c5085… anonymous 85 | [go-htmx](https://github.com/ConflictHQ/boilerworks-go-htmx) | Go + Chi | HTMX + Templ |
c5c5085… anonymous 86 | [fastapi-htmx](https://github.com/ConflictHQ/boilerworks-fastapi-htmx) | FastAPI | HTMX + Alpine.js |
c5c5085… anonymous 87 | [saleor-nextjs](https://github.com/ConflictHQ/boilerworks-saleor-nextjs) | Saleor (Django) | Next.js 16 |
0cb4a5e… anonymous 88
0cb4a5e… anonymous 89 ### Micro Templates (6)
0cb4a5e… anonymous 90
c5c5085… anonymous 91 | Name | Backend |
c5c5085… anonymous 92 |------|---------|
c5c5085… anonymous 93 | [django-micro](https://github.com/ConflictHQ/boilerworks-django-micro) | Django 5 (DRF/Ninja) |
c5c5085… anonymous 94 | [fastapi-micro](https://github.com/ConflictHQ/boilerworks-fastapi-micro) | FastAPI |
c5c5085… anonymous 95 | [nestjs-micro](https://github.com/ConflictHQ/boilerworks-nestjs-micro) | NestJS 11 |
c5c5085… anonymous 96 | [go-micro](https://github.com/ConflictHQ/boilerworks-go-micro) | Go + Chi |
c5c5085… anonymous 97 | [rust-micro](https://github.com/ConflictHQ/boilerworks-rust-micro) | Axum (Rust) |
c5c5085… anonymous 98 | [cherrypy-micro](https://github.com/ConflictHQ/boilerworks-cherrypy-micro) | CherryPy |
0cb4a5e… anonymous 99
0cb4a5e… anonymous 100 ### Edge Templates (5)
0cb4a5e… anonymous 101
c5c5085… anonymous 102 | Name | Framework |
c5c5085… anonymous 103 |------|-----------|
c5c5085… anonymous 104 | [sveltekit-full](https://github.com/ConflictHQ/boilerworks-sveltekit-full) | SvelteKit |
c5c5085… anonymous 105 | [remix-full](https://github.com/ConflictHQ/boilerworks-remix-full) | Remix |
c5c5085… anonymous 106 | [hono-micro](https://github.com/ConflictHQ/boilerworks-hono-micro) | Hono (Cloudflare Workers) |
c5c5085… anonymous 107 | [nuxt-full](https://github.com/ConflictHQ/boilerworks-nuxt-full) | Nuxt 4 |
c5c5085… anonymous 108 | [astro-site](https://github.com/ConflictHQ/boilerworks-astro-site) | Astro |
0cb4a5e… anonymous 109
0cb4a5e… anonymous 110 ---
0cb4a5e… anonymous 111
0cb4a5e… anonymous 112 ## Commands
0cb4a5e… anonymous 113
0cb4a5e… anonymous 114 ```bash
0cb4a5e… anonymous 115 boilerworks --help # show all commands
0cb4a5e… anonymous 116 boilerworks list # show all 26 templates
0cb4a5e… anonymous 117 boilerworks list --size micro # filter by size
0cb4a5e… anonymous 118 boilerworks list --language python # filter by language
0cb4a5e… anonymous 119 boilerworks setup # interactive wizard
0cb4a5e… anonymous 120 boilerworks init # generate project from boilerworks.yaml
0cb4a5e… anonymous 121 boilerworks init --dry-run # preview what would happen
0cb4a5e… anonymous 122 boilerworks init --manifest ./path/to/boilerworks.yaml
0cb4a5e… anonymous 123 boilerworks init --output /path/to/output
0cb4a5e… anonymous 124 ```
0cb4a5e… anonymous 125
0cb4a5e… anonymous 126 ---
0cb4a5e… anonymous 127
0cb4a5e… anonymous 128 ## boilerworks.yaml
0cb4a5e… anonymous 129
0cb4a5e… anonymous 130 The manifest file describes your project. Generated by `boilerworks setup`, editable by hand.
0cb4a5e… anonymous 131
0cb4a5e… anonymous 132 ```yaml
0cb4a5e… anonymous 133 project: my-app
0cb4a5e… anonymous 134 family: django-nextjs
0cb4a5e… anonymous 135 size: full
0cb4a5e… anonymous 136 topology: standard
0cb4a5e… anonymous 137 cloud: aws
c5c5085… anonymous 138 ops: true
0cb4a5e… anonymous 139 region: us-east-1
0cb4a5e… anonymous 140 domain: myapp.com
0cb4a5e… anonymous 141 mobile: false
0cb4a5e… anonymous 142 web_presence: false
0cb4a5e… anonymous 143 compliance:
0cb4a5e… anonymous 144 - soc2
0cb4a5e… anonymous 145 services:
0cb4a5e… anonymous 146 email: ses
0cb4a5e… anonymous 147 cache: redis
0cb4a5e… anonymous 148 data:
0cb4a5e… anonymous 149 database: postgres
0cb4a5e… anonymous 150 migrations: true
0cb4a5e… anonymous 151 seed_data: true
0cb4a5e… anonymous 152 testing:
0cb4a5e… anonymous 153 e2e: playwright
0cb4a5e… anonymous 154 unit: true
0cb4a5e… anonymous 155 integration: true
0cb4a5e… anonymous 156 ```
0cb4a5e… anonymous 157
0cb4a5e… anonymous 158 See [`boilerworks.yaml.example`](boilerworks.yaml.example) for a fully annotated version.
0cb4a5e… anonymous 159
0cb4a5e… anonymous 160 ---
0cb4a5e… anonymous 161
0cb4a5e… anonymous 162 ## What Every Template Includes
0cb4a5e… anonymous 163
0cb4a5e… anonymous 164 Every Boilerworks Full template ships with:
0cb4a5e… anonymous 165
c5c5085… anonymous 166 - **Auth** — session-based (httpOnly cookies), bcrypt passwords
0cb4a5e… anonymous 167 - **Permissions** — group-based, per-operation, checked at every endpoint
0cb4a5e… anonymous 168 - **Background jobs** — Redis-backed queue, retries, dead-letter handling
0cb4a5e… anonymous 169 - **Email** — provider-agnostic (SES, SendGrid, Mailgun, Mailpit locally)
c5c5085… anonymous 170 - **Admin** — authenticated management interface with CRUD for all models
0cb4a5e… anonymous 171 - **Docker Compose** — one command to boot the full stack
0cb4a5e… anonymous 172 - **CI/CD** — GitHub Actions: lint, test, build, audit
0cb4a5e… anonymous 173 - **AI agent shims** — CLAUDE.md, AGENTS.md, bootstrap.md
c5c5085… anonymous 174
c5c5085… anonymous 175 ---
c5c5085… anonymous 176
c5c5085… anonymous 177 ## Infrastructure
c5c5085… anonymous 178
c5c5085… anonymous 179 Pair any template with [boilerworks-opscode](https://github.com/ConflictHQ/boilerworks-opscode) for production Terraform:
c5c5085… anonymous 180
c5c5085… anonymous 181 - **AWS** — ECS Fargate, RDS Postgres 16, ElastiCache Redis, ALB, Route53, ACM, S3, Secrets Manager
c5c5085… anonymous 182 - **GCP / Azure** — structured stubs ready for expansion
c5c5085… anonymous 183
c5c5085… anonymous 184 Select a cloud in `boilerworks setup` and `boilerworks init` will clone and configure the ops repo alongside your app.
0cb4a5e… anonymous 185
0cb4a5e… anonymous 186 ---
0cb4a5e… anonymous 187
0cb4a5e… anonymous 188 ## Contributing
0cb4a5e… anonymous 189
0cb4a5e… anonymous 190 See [CONTRIBUTING.md](CONTRIBUTING.md) for the development process.
0cb4a5e… anonymous 191
0cb4a5e… anonymous 192 Issues and PRs welcome at [github.com/ConflictHQ/boilerworks](https://github.com/ConflictHQ/boilerworks).
0cb4a5e… anonymous 193
0cb4a5e… anonymous 194 ---
0cb4a5e… anonymous 195
0cb4a5e… anonymous 196 ## Links
0cb4a5e… anonymous 197
0cb4a5e… anonymous 198 - Documentation: [boilerworks.dev](https://boilerworks.dev)
c5c5085… anonymous 199 - Product: [boilerworks.ai](https://boilerworks.ai)
0cb4a5e… anonymous 200 - Templates: [github.com/ConflictHQ](https://github.com/ConflictHQ)
0cb4a5e… anonymous 201
0cb4a5e… anonymous 202 ---
0cb4a5e… anonymous 203
f3f6dc2… anonymous 204 Boilerworks is a [CONFLICT](https://weareconflict.com) brand. CONFLICT is a registered trademark of CONFLICT LLC.

Keyboard Shortcuts

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