@deftai/directive-content 0.55.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/skills/deft/SKILL.md +6 -0
- package/.agents/skills/deft-directive-article-review/SKILL.md +11 -0
- package/.agents/skills/deft-directive-build/SKILL.md +10 -0
- package/.agents/skills/deft-directive-cost/SKILL.md +12 -0
- package/.agents/skills/deft-directive-debug/SKILL.md +13 -0
- package/.agents/skills/deft-directive-gh-arch/SKILL.md +11 -0
- package/.agents/skills/deft-directive-gh-slice/SKILL.md +10 -0
- package/.agents/skills/deft-directive-glossary/SKILL.md +10 -0
- package/.agents/skills/deft-directive-interview/SKILL.md +9 -0
- package/.agents/skills/deft-directive-pre-pr/SKILL.md +9 -0
- package/.agents/skills/deft-directive-refinement/SKILL.md +10 -0
- package/.agents/skills/deft-directive-release/SKILL.md +12 -0
- package/.agents/skills/deft-directive-review-cycle/SKILL.md +10 -0
- package/.agents/skills/deft-directive-setup/SKILL.md +10 -0
- package/.agents/skills/deft-directive-swarm/SKILL.md +10 -0
- package/.agents/skills/deft-directive-sync/SKILL.md +9 -0
- package/.agents/skills/deft-directive-triage/SKILL.md +9 -0
- package/.agents/skills/deft-directive-write-skill/SKILL.md +9 -0
- package/LICENSE.md +22 -0
- package/QUICK-START.md +167 -0
- package/UPGRADING.md +517 -0
- package/coding/build-output.md +28 -0
- package/coding/coding.md +235 -0
- package/coding/debugging.md +110 -0
- package/coding/holzmann.md +96 -0
- package/coding/hygiene.md +127 -0
- package/coding/security.md +158 -0
- package/coding/testing.md +162 -0
- package/coding/toolchain.md +44 -0
- package/commands.md +300 -0
- package/context/context.md +57 -0
- package/context/deterministic-split.md +67 -0
- package/context/examples.md +26 -0
- package/context/fractal-summaries.md +69 -0
- package/context/long-horizon.md +46 -0
- package/context/spec-deltas.md +177 -0
- package/context/tool-design.md +34 -0
- package/context/working-memory.md +62 -0
- package/contracts/boundary-maps.md +65 -0
- package/contracts/deterministic-questions.md +59 -0
- package/contracts/hierarchy.md +77 -0
- package/conventions/content-manifest.json +399 -0
- package/conventions/machine-generated-banner.md +130 -0
- package/conventions/references.md +120 -0
- package/conventions/rule-ownership.json +382 -0
- package/conventions/task-caching.md +43 -0
- package/conventions/vbrief-filenames.md +70 -0
- package/deployments/README.md +37 -0
- package/deployments/agentuity/README.md +138 -0
- package/deployments/agentuity/via-cli.md +380 -0
- package/deployments/agentuity/via-cloud.md +425 -0
- package/deployments/agentuity/via-github-actions.md +664 -0
- package/deployments/agentuity/via-gravity-network.md +606 -0
- package/deployments/agentuity/via-vpc.md +607 -0
- package/deployments/aws/README.md +38 -0
- package/deployments/aws/via-app-runner.md +612 -0
- package/deployments/aws/via-ecs-fargate.md +561 -0
- package/deployments/aws/via-elastic-beanstalk.md +628 -0
- package/deployments/aws/via-lambda.md +649 -0
- package/deployments/azure/README.md +37 -0
- package/deployments/azure/via-aks.md +390 -0
- package/deployments/azure/via-app-service.md +564 -0
- package/deployments/azure/via-container-apps.md +599 -0
- package/deployments/azure/via-functions.md +552 -0
- package/deployments/cloud-gov/README.md +63 -0
- package/deployments/cloud-gov/agents/compliance-docs.md +154 -0
- package/deployments/cloud-gov/agents.md +39 -0
- package/deployments/cloud-gov/cicd.md +64 -0
- package/deployments/cloud-gov/deployment.md +150 -0
- package/deployments/cloud-gov/logging.md +43 -0
- package/deployments/cloud-gov/manifest.md +121 -0
- package/deployments/cloud-gov/overview.md +58 -0
- package/deployments/cloud-gov/security.md +46 -0
- package/deployments/cloud-gov/services.md +72 -0
- package/deployments/cloud-gov/upstream/README.md +18 -0
- package/deployments/cloudflare/README.md +33 -0
- package/deployments/cloudflare/via-dashboard.md +83 -0
- package/deployments/cloudflare/via-git.md +90 -0
- package/deployments/cloudflare/via-github-actions.md +185 -0
- package/deployments/cloudflare/via-terraform.md +157 -0
- package/deployments/cloudflare/via-wrangler.md +165 -0
- package/deployments/fly-io/README.md +37 -0
- package/deployments/fly-io/via-dockerfile.md +648 -0
- package/deployments/fly-io/via-flyctl.md +653 -0
- package/deployments/fly-io/via-github-actions.md +695 -0
- package/deployments/fly-io/via-multi-region.md +598 -0
- package/deployments/google/README.md +34 -0
- package/deployments/google/via-app-engine.md +42 -0
- package/deployments/google/via-cloud-functions.md +23 -0
- package/deployments/google/via-cloud-run.md +330 -0
- package/deployments/google/via-gke.md +23 -0
- package/deployments/netlify/README.md +99 -0
- package/deployments/netlify/via-cli.md +17 -0
- package/deployments/netlify/via-functions.md +19 -0
- package/deployments/netlify/via-git.md +25 -0
- package/deployments/vercel/README.md +90 -0
- package/deployments/vercel/via-api.md +16 -0
- package/deployments/vercel/via-cli.md +17 -0
- package/deployments/vercel/via-git.md +24 -0
- package/docs/BROWNFIELD.md +179 -0
- package/docs/getting-started.md +137 -0
- package/docs/good-agents-md.md +137 -0
- package/events/README.md +89 -0
- package/events/event-record.schema.json +26 -0
- package/events/registry.json +166 -0
- package/events/registry.schema.json +71 -0
- package/glossary.md +145 -0
- package/incidents/README.md +81 -0
- package/incidents/_template.md +38 -0
- package/interfaces/cli.md +104 -0
- package/interfaces/rest.md +212 -0
- package/interfaces/tui.md +242 -0
- package/interfaces/web.md +123 -0
- package/languages/6502-DASM.md +132 -0
- package/languages/c.md +235 -0
- package/languages/commands.md +23 -0
- package/languages/cpp.md +132 -0
- package/languages/csharp.md +259 -0
- package/languages/dart.md +183 -0
- package/languages/delphi.md +218 -0
- package/languages/elixir.md +208 -0
- package/languages/go.md +78 -0
- package/languages/java.md +278 -0
- package/languages/javascript.md +163 -0
- package/languages/julia.md +175 -0
- package/languages/kotlin.md +193 -0
- package/languages/markdown.md +168 -0
- package/languages/mermaid.md +146 -0
- package/languages/officejs.md +392 -0
- package/languages/python.md +209 -0
- package/languages/r.md +163 -0
- package/languages/rust.md +216 -0
- package/languages/sql.md +216 -0
- package/languages/swift.md +153 -0
- package/languages/typescript.md +132 -0
- package/languages/vba.md +279 -0
- package/languages/vhdl.md +180 -0
- package/languages/visual-basic.md +151 -0
- package/languages/zig.md +196 -0
- package/meta/SOUL.md +27 -0
- package/meta/code-field.md +44 -0
- package/meta/morals.md +40 -0
- package/meta/philosophy.md +39 -0
- package/meta/project.md +49 -0
- package/meta/ralph.md +223 -0
- package/meta/security.md +80 -0
- package/meta/versioning.md +326 -0
- package/package.json +22 -0
- package/packs/lessons/lessons-pack-0.1.json +553 -0
- package/packs/patterns/patterns-pack-0.1.json +57 -0
- package/packs/rules/rules-pack-0.1.json +4767 -0
- package/packs/skills/skills-pack-0.1.json +262 -0
- package/packs/strategies/strategies-pack-0.1.json +167 -0
- package/packs/swarm-spec/swarm-spec-pack-0.1.json +17 -0
- package/patterns/executor-layer-credentials.md +227 -0
- package/patterns/llm-app.md +156 -0
- package/patterns/multi-agent.md +278 -0
- package/patterns/prompt-assembly-layer-ordering.md +154 -0
- package/patterns/role-as-overlay.md +179 -0
- package/platforms/2600.md +137 -0
- package/platforms/unity.md +329 -0
- package/references/composer-skill-porting.md +152 -0
- package/references/cost-models.md +163 -0
- package/references/ip-risk.md +246 -0
- package/references/plain-english-ux.md +275 -0
- package/resilience/context-pruning.md +67 -0
- package/resilience/continue-here.md +62 -0
- package/scm/changelog.md +276 -0
- package/scm/git.md +139 -0
- package/scm/github.md +265 -0
- package/secrets/.gitkeep +0 -0
- package/skills/deft-build/SKILL.md +20 -0
- package/skills/deft-directive-article-review/SKILL.md +156 -0
- package/skills/deft-directive-build/SKILL.md +302 -0
- package/skills/deft-directive-cost/SKILL.md +201 -0
- package/skills/deft-directive-debug/SKILL.md +140 -0
- package/skills/deft-directive-decompose/SKILL.md +96 -0
- package/skills/deft-directive-gh-arch/SKILL.md +160 -0
- package/skills/deft-directive-gh-slice/SKILL.md +199 -0
- package/skills/deft-directive-glossary/SKILL.md +118 -0
- package/skills/deft-directive-interview/SKILL.md +528 -0
- package/skills/deft-directive-pre-pr/SKILL.md +131 -0
- package/skills/deft-directive-probe/SKILL.md +127 -0
- package/skills/deft-directive-refinement/SKILL.md +403 -0
- package/skills/deft-directive-release/SKILL.md +266 -0
- package/skills/deft-directive-review-cycle/SKILL.md +401 -0
- package/skills/deft-directive-setup/SKILL.md +717 -0
- package/skills/deft-directive-swarm/SKILL.md +989 -0
- package/skills/deft-directive-sync/SKILL.md +288 -0
- package/skills/deft-directive-triage/SKILL.md +137 -0
- package/skills/deft-directive-write-skill/SKILL.md +169 -0
- package/skills/deft-interview/SKILL.md +16 -0
- package/skills/deft-pre-pr/SKILL.md +16 -0
- package/skills/deft-review-cycle/SKILL.md +16 -0
- package/skills/deft-roadmap-refresh/SKILL.md +16 -0
- package/skills/deft-setup/SKILL.md +20 -0
- package/skills/deft-swarm/SKILL.md +16 -0
- package/skills/deft-sync/SKILL.md +16 -0
- package/strategies/README.md +83 -0
- package/strategies/artifact-guards.md +85 -0
- package/strategies/bdd.md +115 -0
- package/strategies/brownfield.md +7 -0
- package/strategies/discuss.md +129 -0
- package/strategies/emit-hints.md +69 -0
- package/strategies/enterprise.md +193 -0
- package/strategies/interview.md +551 -0
- package/strategies/map.md +179 -0
- package/strategies/probe.md +151 -0
- package/strategies/rapid.md +155 -0
- package/strategies/research.md +155 -0
- package/strategies/roadmap.md +9 -0
- package/strategies/speckit.md +437 -0
- package/strategies/v0-20-contract.md +134 -0
- package/strategies/yolo.md +169 -0
- package/swarm/swarm.md +300 -0
- package/templates/COST-ESTIMATE.md +114 -0
- package/templates/PULL_REQUEST_TEMPLATE.md +35 -0
- package/templates/agent-prompt-preamble.md +409 -0
- package/templates/agents-entry.md +211 -0
- package/templates/agents-entry.placeholders.md +75 -0
- package/templates/embed.go +20 -0
- package/templates/embed_test.go +36 -0
- package/templates/make-spec-example.md +9 -0
- package/templates/make-spec.md +246 -0
- package/templates/project.md.template +52 -0
- package/templates/specification.md +1 -0
- package/templates/swarm-greptile-poller-prompt.md +556 -0
- package/templates/user.md.template +31 -0
- package/tools/RWLDL.md +80 -0
- package/tools/greptile.md +141 -0
- package/tools/installer.md +23 -0
- package/tools/taskfile-migration.md +32 -0
- package/tools/taskfile.md +185 -0
- package/tools/telemetry.md +285 -0
- package/vbrief/schemas/cache-meta.schema.json +137 -0
- package/vbrief/schemas/candidates.schema.json +130 -0
- package/vbrief/schemas/codebase-map.schema.json +213 -0
- package/vbrief/schemas/lessons-pack.schema.json +134 -0
- package/vbrief/schemas/patterns-pack.schema.json +84 -0
- package/vbrief/schemas/rules-pack.schema.json +105 -0
- package/vbrief/schemas/skills-pack.schema.json +94 -0
- package/vbrief/schemas/slices.schema.json +87 -0
- package/vbrief/schemas/strategies-pack.schema.json +89 -0
- package/vbrief/schemas/swarm-spec-pack.schema.json +84 -0
- package/vbrief/schemas/vbrief-core.schema.json +1022 -0
- package/vbrief/vbrief.md +684 -0
- package/verification/integration.md +76 -0
- package/verification/plan-checking.md +85 -0
- package/verification/uat.md +60 -0
- package/verification/verification.md +117 -0
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
# Deploy to Cloudflare via Wrangler CLI
|
|
2
|
+
|
|
3
|
+
Legend (from RFC2119): !=MUST, ~=SHOULD, ≉=SHOULD NOT, ⊗=MUST NOT, ?=MAY.
|
|
4
|
+
|
|
5
|
+
**⚠️ See also**: [README.md](./README.md) | [via-git.md](./via-git.md) | [via-github-actions.md](./via-github-actions.md)
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
Wrangler is Cloudflare's official CLI for deploying to both Pages (static assets)
|
|
10
|
+
and Workers (serverless functions). It provides full control over the deployment
|
|
11
|
+
process and is the foundation for all CLI-based and CI/CD workflows.
|
|
12
|
+
|
|
13
|
+
**Best for**: Developers wanting full local control, custom CI pipelines, or Workers deployments.
|
|
14
|
+
|
|
15
|
+
## Prerequisites
|
|
16
|
+
|
|
17
|
+
- Cloudflare account
|
|
18
|
+
- Node.js ≥ 16.17.0
|
|
19
|
+
- `wrangler` installed (project dev dependency preferred)
|
|
20
|
+
|
|
21
|
+
## Installation
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
# Project dev dependency (recommended)
|
|
25
|
+
npm install -D wrangler
|
|
26
|
+
|
|
27
|
+
# Or globally
|
|
28
|
+
npm install -g wrangler
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Authentication
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# Interactive (opens browser)
|
|
35
|
+
npx wrangler login
|
|
36
|
+
|
|
37
|
+
# Non-interactive (CI/CD) — use API token
|
|
38
|
+
export CLOUDFLARE_API_TOKEN=<token>
|
|
39
|
+
export CLOUDFLARE_ACCOUNT_ID=<account-id>
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Deploy Workflows
|
|
43
|
+
|
|
44
|
+
### Pages (Static Assets / Direct Upload)
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
# Build your project first
|
|
48
|
+
npm run build
|
|
49
|
+
|
|
50
|
+
# Deploy to Pages
|
|
51
|
+
npx wrangler pages deploy <BUILD_OUTPUT_DIR>
|
|
52
|
+
|
|
53
|
+
# Deploy to a specific branch (preview)
|
|
54
|
+
npx wrangler pages deploy <BUILD_OUTPUT_DIR> --branch=staging
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Workers
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
# Scaffold a new Worker (uses C3 / create-cloudflare)
|
|
61
|
+
npm create cloudflare@latest my-worker
|
|
62
|
+
|
|
63
|
+
# Local development
|
|
64
|
+
npx wrangler dev
|
|
65
|
+
|
|
66
|
+
# Deploy to production
|
|
67
|
+
npx wrangler deploy
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Configuration (`wrangler.toml` / `wrangler.jsonc`)
|
|
71
|
+
|
|
72
|
+
Minimum for Workers:
|
|
73
|
+
```toml
|
|
74
|
+
name = "my-worker"
|
|
75
|
+
main = "src/index.ts"
|
|
76
|
+
compatibility_date = "2025-01-01"
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Minimum for Pages with static assets:
|
|
80
|
+
```toml
|
|
81
|
+
name = "my-site"
|
|
82
|
+
compatibility_date = "2025-01-01"
|
|
83
|
+
pages_build_output_dir = "dist"
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## Standards
|
|
87
|
+
|
|
88
|
+
### Installation & Versioning
|
|
89
|
+
- ! Install Wrangler as a project dev dependency (`npm install -D wrangler`)
|
|
90
|
+
- ! Pin the Wrangler version in `package.json` for reproducible deploys
|
|
91
|
+
- ≉ Install Wrangler globally as the sole installation — team members will drift on versions
|
|
92
|
+
|
|
93
|
+
### Authentication
|
|
94
|
+
- ! Use API tokens (not legacy API keys) for all non-interactive environments
|
|
95
|
+
- ! Store `CLOUDFLARE_API_TOKEN` and `CLOUDFLARE_ACCOUNT_ID` as environment variables in CI
|
|
96
|
+
- ⊗ Commit API tokens or credentials to the repository
|
|
97
|
+
- ~ Scope API tokens to the minimum required permissions
|
|
98
|
+
|
|
99
|
+
### Configuration
|
|
100
|
+
- ! Include a `wrangler.toml` or `wrangler.jsonc` in the project root
|
|
101
|
+
- ! Set `compatibility_date` to a recent date and update periodically
|
|
102
|
+
- ~ Use Wrangler environments (`[env.staging]`, `[env.production]`) for multi-stage deploys
|
|
103
|
+
- ~ Treat `wrangler.toml` as the source of truth — dashboard changes are overwritten on deploy
|
|
104
|
+
- ? Use `--dry-run --outdir=dist` to inspect the build output before deploying
|
|
105
|
+
|
|
106
|
+
### Deployment
|
|
107
|
+
- ! Run `npx wrangler pages deploy <dir>` for Pages projects
|
|
108
|
+
- ! Run `npx wrangler deploy` for Workers projects
|
|
109
|
+
- ! Build the project before deploying (`npm run build` or equivalent)
|
|
110
|
+
- ~ Use `--branch=<name>` for preview deployments on Pages
|
|
111
|
+
- ~ Verify deployment URL after deploy (`<project>.pages.dev` or `<worker>.workers.dev`)
|
|
112
|
+
|
|
113
|
+
### Local Development
|
|
114
|
+
- ~ Use `npx wrangler dev` for local development with hot reload
|
|
115
|
+
- ~ Use `.dev.vars` for local secrets (gitignored)
|
|
116
|
+
- ⊗ Use `wrangler dev` with production bindings unless explicitly intended
|
|
117
|
+
|
|
118
|
+
### Secrets
|
|
119
|
+
- ! Use `npx wrangler secret put <NAME>` to set secrets (never in config files)
|
|
120
|
+
- ! Use `.dev.vars` for local development secrets
|
|
121
|
+
- ⊗ Store secrets in `wrangler.toml` — use `wrangler secret` commands instead
|
|
122
|
+
|
|
123
|
+
## 🔧 Patterns
|
|
124
|
+
|
|
125
|
+
**Deploy Pages with custom project name**:
|
|
126
|
+
```bash
|
|
127
|
+
npx wrangler pages project create my-site
|
|
128
|
+
npx wrangler pages deploy dist --project-name=my-site
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
**Multi-environment Workers**:
|
|
132
|
+
```toml
|
|
133
|
+
[env.staging]
|
|
134
|
+
name = "my-worker-staging"
|
|
135
|
+
route = "staging.example.com/*"
|
|
136
|
+
|
|
137
|
+
[env.production]
|
|
138
|
+
name = "my-worker-production"
|
|
139
|
+
route = "example.com/*"
|
|
140
|
+
```
|
|
141
|
+
```bash
|
|
142
|
+
npx wrangler deploy --env=staging
|
|
143
|
+
npx wrangler deploy --env=production
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
**Strict mode deploy (CI safety)**:
|
|
147
|
+
```bash
|
|
148
|
+
npx wrangler deploy --strict
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
## Anti-Patterns
|
|
152
|
+
|
|
153
|
+
- ⊗ Modify Workers settings in the dashboard when using Wrangler (Wrangler overwrites on deploy)
|
|
154
|
+
- ⊗ Deploy without building first — Wrangler deploys the directory as-is
|
|
155
|
+
- ⊗ Hardcode `account_id` with secrets in the same file
|
|
156
|
+
- ≉ Use `wrangler publish` (deprecated — use `wrangler deploy`)
|
|
157
|
+
- ≉ Skip `compatibility_date` — this controls runtime behavior and breaking changes
|
|
158
|
+
|
|
159
|
+
## Compliance Checklist
|
|
160
|
+
|
|
161
|
+
- ! Wrangler installed as dev dependency with pinned version
|
|
162
|
+
- ! `wrangler.toml` present with `name`, `main` (Workers) or `pages_build_output_dir` (Pages)
|
|
163
|
+
- ! `compatibility_date` set
|
|
164
|
+
- ! Secrets managed via `wrangler secret`, not config files
|
|
165
|
+
- ! API token scoped to minimum permissions
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Fly.io Deployment Module
|
|
2
|
+
|
|
3
|
+
Deft guidance for deploying applications to Fly.io.
|
|
4
|
+
|
|
5
|
+
## Status
|
|
6
|
+
|
|
7
|
+
- ! Optional module
|
|
8
|
+
- ~ Good for Deft usage
|
|
9
|
+
|
|
10
|
+
## Overview
|
|
11
|
+
|
|
12
|
+
Fly.io runs Docker containers on physical servers close to your users worldwide. Edge deployment platform with 30+ regions and automatic global routing.
|
|
13
|
+
|
|
14
|
+
## Deployment Methods
|
|
15
|
+
|
|
16
|
+
| File | Method | Best For |
|
|
17
|
+
|------|--------|----------|
|
|
18
|
+
| `via-flyctl.md` | flyctl CLI | Primary deployment method, full control (default) |
|
|
19
|
+
| `via-github-actions.md` | GitHub Actions CI/CD | Automated pipelines with testing and deployments |
|
|
20
|
+
| `via-dockerfile.md` | Custom Dockerfile | Advanced Docker builds, multi-stage optimization |
|
|
21
|
+
| `via-multi-region.md` | Multi-Region Deployment | Global apps with low latency and high availability |
|
|
22
|
+
|
|
23
|
+
## Quick Decision Guide
|
|
24
|
+
|
|
25
|
+
- **Default path**: `via-flyctl.md` — `fly launch` and `fly deploy` for most apps
|
|
26
|
+
- **CI/CD pipelines**: `via-github-actions.md` — automated deployments with tests
|
|
27
|
+
- **Custom containers**: `via-dockerfile.md` — full Docker control and optimization
|
|
28
|
+
- **Global deployment**: `via-multi-region.md` — deploy to multiple regions worldwide
|
|
29
|
+
|
|
30
|
+
## References
|
|
31
|
+
|
|
32
|
+
- [Fly.io Documentation](https://fly.io/docs/)
|
|
33
|
+
- [flyctl CLI Reference](https://fly.io/docs/flyctl/)
|
|
34
|
+
- [Fly Launch](https://fly.io/docs/reference/fly-launch/)
|
|
35
|
+
- [Multi-region Deployment](https://fly.io/docs/reference/regions/)
|
|
36
|
+
- [Fly Postgres](https://fly.io/docs/postgres/)
|
|
37
|
+
- [Fly Machines](https://fly.io/docs/machines/)
|