Skip to content

Commit a1cd837

Browse files
eamonnfahertyclaude
andcommitted
Replace Terraform with HCL and tofu commands throughout
All prose references to Terraform updated to HCL (with OpenTofu or Terraform where appropriate). CLI commands in code blocks updated from terraform to tofu. Prerequisite now links to both OpenTofu and Terraform. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent f75f391 commit a1cd837

File tree

7 files changed

+48
-48
lines changed

7 files changed

+48
-48
lines changed

getting-started.html

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta charset="UTF-8">
55
<meta name="viewport" content="width=device-width, initial-scale=1.0">
66
<title>Getting Started - Local Web Services</title>
7-
<meta name="description" content="Install Local Web Services and get running with AWS CDK or Terraform in under five minutes.">
7+
<meta name="description" content="Install Local Web Services and get running with AWS CDK or HCL in under five minutes.">
88
<link rel="stylesheet" href="style.css">
99
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism-tomorrow.min.css">
1010
</head>
@@ -35,7 +35,7 @@ <h1>Getting Started</h1>
3535
<section class="section">
3636
<div class="container">
3737
<h2>Prerequisites</h2>
38-
<p class="section-lead">These are required for both CDK and Terraform workflows.</p>
38+
<p class="section-lead">These are required for both CDK and HCL workflows.</p>
3939

4040
<div class="getting-started-steps">
4141
<div class="gs-step">
@@ -109,19 +109,19 @@ <h3>5. Make requests</h3>
109109

110110
<section class="section">
111111
<div class="container">
112-
<h2>Terraform Quick Start</h2>
113-
<p class="section-lead">Clone a sample Terraform project and run it locally in six steps.</p>
112+
<h2>HCL Quick Start</h2>
113+
<p class="section-lead">Clone a sample HCL project and run it locally in six steps.</p>
114114

115115
<div class="getting-started-steps">
116116
<div class="gs-step">
117117
<h3>Additional Prerequisite</h3>
118118
<ul>
119-
<li><a href="https://www.terraform.io/">Terraform</a> >= 1.0</li>
119+
<li><a href="https://opentofu.org/">OpenTofu</a> or <a href="https://www.terraform.io/">Terraform</a> >= 1.0</li>
120120
</ul>
121121
</div>
122122

123123
<div class="gs-step">
124-
<h3>1. Clone the Terraform sample project</h3>
124+
<h3>1. Clone the HCL sample project</h3>
125125
<div class="code-block"><code>git clone https://github.com/local-web-services/local-web-services.git
126126
cd local-web-services/sample-project-hcl
127127
cd lambda/create-order && npm install && cd ../..
@@ -131,8 +131,8 @@ <h3>1. Clone the Terraform sample project</h3>
131131
</div>
132132

133133
<div class="gs-step">
134-
<h3>2. Initialize Terraform</h3>
135-
<div class="code-block"><code>terraform init</code></div>
134+
<h3>2. Initialize HCL project</h3>
135+
<div class="code-block"><code>tofu init</code></div>
136136
</div>
137137

138138
<div class="gs-step">
@@ -144,14 +144,14 @@ <h3>3. Pull Lambda runtime images (one-time)</h3>
144144
<div class="gs-step">
145145
<h3>4. Start the local environment</h3>
146146
<div class="code-block"><code>uvx --from local-web-services ldk dev</code></div>
147-
<p>The <code>ldk dev</code> command auto-detects your Terraform project, starts all AWS service providers in always-on mode, and generates a <code>_lws_override.tf</code> file that redirects Terraform's AWS provider to your local endpoints.</p>
147+
<p>The <code>ldk dev</code> command auto-detects your HCL project, starts all AWS service providers in always-on mode, and generates a <code>_lws_override.tf</code> file that redirects Terraform's AWS provider to your local endpoints.</p>
148148
</div>
149149

150150
<div class="gs-step">
151-
<h3>5. Apply Terraform</h3>
152-
<p>In another terminal, apply your Terraform configuration against the local services:</p>
153-
<div class="code-block"><code>terraform apply -auto-approve</code></div>
154-
<p>Terraform creates all resources (DynamoDB tables, SQS queues, Lambda functions, API Gateway routes, etc.) against your local endpoints. No AWS account needed.</p>
151+
<h3>5. Apply HCL</h3>
152+
<p>In another terminal, apply your HCL configuration against the local services:</p>
153+
<div class="code-block"><code>tofu apply -auto-approve</code></div>
154+
<p>Your HCL tool creates all resources (DynamoDB tables, SQS queues, Lambda functions, API Gateway routes, etc.) against your local endpoints. No AWS account needed.</p>
155155
</div>
156156

157157
<div class="gs-step">

index.html

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta charset="UTF-8">
55
<meta name="viewport" content="width=device-width, initial-scale=1.0">
66
<title>Local Web Services - The Fastest Feedback Loop for Cloud-Native Development</title>
7-
<meta name="description" content="Local Web Services reads your AWS CDK or Terraform project and recreates your application locally. Build, test, and debug cloud-native AWS apps without deploying — no credentials, no cost, no waiting.">
7+
<meta name="description" content="Local Web Services reads your AWS CDK or HCL project and recreates your application locally. Build, test, and debug cloud-native AWS apps without deploying — no credentials, no cost, no waiting.">
88
<link rel="sitemap" type="application/xml" href="sitemap.xml">
99
<link rel="stylesheet" href="style.css">
1010
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism-tomorrow.min.css">
@@ -30,7 +30,7 @@
3030
<div class="container">
3131
<h1>Local Web Services</h1>
3232
<p class="hero-subtitle">Test AWS applications with realistic in-process local services using native language SDKs.<br>
33-
Or run <code>ldk dev</code> as a local development server for CDK and Terraform projects.<br>
33+
Or run <code>ldk dev</code> as a local development server for CDK and HCL projects.<br>
3434
No credentials. No cost. No waiting.</p>
3535
<div class="hero-actions">
3636
<a href="sdks.html" class="btn btn-primary">Explore the SDKs</a>
@@ -45,7 +45,7 @@ <h1>Local Web Services</h1>
4545
<section class="section" id="what">
4646
<div class="container">
4747
<h2>What is Local Web Services?</h2>
48-
<p class="section-lead">Local Web Services emulates AWS services locally for development and testing. Use the language SDKs for in-process pytest or unit testing, or run <code>ldk dev</code> to start a full local development server that reads your CDK or Terraform project and recreates your entire stack.</p>
48+
<p class="section-lead">Local Web Services emulates AWS services locally for development and testing. Use the language SDKs for in-process pytest or unit testing, or run <code>ldk dev</code> to start a full local development server that reads your CDK or HCL project and recreates your entire stack.</p>
4949

5050
<div class="feature-grid">
5151
<div class="feature-card">
@@ -56,7 +56,7 @@ <h3>Python SDK</h3>
5656
<div class="feature-card">
5757
<div class="feature-icon">&#9889;</div>
5858
<h3>ldk</h3>
59-
<p>The local development server. Parses your CDK or Terraform project and spins up local providers for every AWS service you use — DynamoDB, Lambda, S3, SQS, and more. Hot reloading included.</p>
59+
<p>The local development server. Parses your CDK or HCL project and spins up local providers for every AWS service you use — DynamoDB, Lambda, S3, SQS, and more. Hot reloading included.</p>
6060
</div>
6161
<div class="feature-card">
6262
<div class="feature-icon">&#128295;</div>
@@ -107,14 +107,14 @@ <h3>Structured Logging</h3>
107107
<section class="section section-alt" id="why">
108108
<div class="container">
109109
<h2>Why Use Local Web Services?</h2>
110-
<p class="section-lead">Building with AWS CDK or Terraform traditionally means deploying to the cloud just to test your code. Every change triggers a deploy-wait-test cycle that kills your flow and racks up costs.</p>
110+
<p class="section-lead">Building with AWS CDK or HCL traditionally means deploying to the cloud just to test your code. Every change triggers a deploy-wait-test cycle that kills your flow and racks up costs.</p>
111111

112112
<div class="comparison">
113113
<div class="comparison-col comparison-before">
114114
<h3>Without Local Web Services</h3>
115115
<ul>
116116
<li>Edit code</li>
117-
<li>Run <code>cdk deploy</code> or <code>terraform apply</code> — wait minutes</li>
117+
<li>Run <code>cdk deploy</code> or <code>tofu apply</code> — wait minutes</li>
118118
<li>Test against live AWS resources</li>
119119
<li>Check CloudWatch logs for errors</li>
120120
<li>Pay for every invocation and resource</li>
@@ -173,7 +173,7 @@ <h3>CI/CD Testing</h3>
173173
<section class="section" id="how-it-works">
174174
<div class="container">
175175
<h2>How It Works</h2>
176-
<p class="section-lead">Local Web Services auto-detects your project type (CDK or Terraform) and starts local AWS-compatible service endpoints. Your code talks to local services instead of real AWS.</p>
176+
<p class="section-lead">Local Web Services auto-detects your project type (CDK or HCL) and starts local AWS-compatible service endpoints. Your code talks to local services instead of real AWS.</p>
177177

178178
<h3 class="section-subheading">CDK Mode</h3>
179179
<div class="steps">
@@ -207,13 +207,13 @@ <h3>Redirect</h3>
207207
</div>
208208
</div>
209209

210-
<h3 class="section-subheading" style="margin-top: 80px;">Terraform Mode</h3>
210+
<h3 class="section-subheading" style="margin-top: 80px;">HCL Mode</h3>
211211
<div class="steps">
212212
<div class="step">
213213
<div class="step-number">1</div>
214214
<div class="step-content">
215215
<h3>Detect</h3>
216-
<p>The <code>ldk</code> tool detects <code>.tf</code> files in your project directory and enters Terraform mode automatically (or use <code>--mode terraform</code> explicitly).</p>
216+
<p>The <code>ldk</code> tool detects <code>.tf</code> files in your project directory and enters HCL mode automatically (or use <code>--mode terraform</code> explicitly).</p>
217217
</div>
218218
</div>
219219
<div class="step">
@@ -234,7 +234,7 @@ <h3>Override</h3>
234234
<div class="step-number">4</div>
235235
<div class="step-content">
236236
<h3>Apply</h3>
237-
<p>Run <code>terraform apply</code> as normal. Terraform creates resources (tables, queues, buckets, Lambda functions) against your local endpoints. Your Lambda handlers run locally with full AWS SDK support.</p>
237+
<p>Run <code>tofu apply</code> as normal. Your HCL tool creates resources (tables, queues, buckets, Lambda functions) against your local endpoints. Your Lambda handlers run locally with full AWS SDK support.</p>
238238
</div>
239239
</div>
240240
</div>

sdk-go.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ <h2>Resource Declaration</h2>
124124

125125
<div class="comparison comparison--code">
126126
<div class="comparison-col">
127-
<h3>Auto-discover from Terraform</h3>
127+
<h3>Auto-discover from HCL</h3>
128128
<div class="code-block" style="margin-top: 16px;">
129129
<code>// Reads .tf files in "terraform/", starts ldk dev,
130130
// and pre-creates all declared resources
@@ -172,7 +172,7 @@ <h3 class="section-subheading section-subheading--primary">Factory functions</h3
172172
<div class="code-block config-example">
173173
<code>import "github.com/local-web-services/local-web-services-go-sdk/lws"
174174

175-
// Auto-discover from Terraform .tf files
175+
// Auto-discover from HCL .tf files
176176
session, err := lws.FromHcl("../my-terraform-project")
177177

178178
// Explicit resource declaration

sdk-java.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ <h2>Resource Declaration</h2>
139139

140140
<div class="comparison comparison--code">
141141
<div class="comparison-col">
142-
<h3>Auto-discover from Terraform</h3>
142+
<h3>Auto-discover from HCL</h3>
143143
<div class="code-block" style="margin-top: 16px;">
144144
<code>// Reads .tf files in "terraform/", starts ldk dev,
145145
// and pre-creates all declared resources
@@ -184,7 +184,7 @@ <h3 class="section-subheading section-subheading--primary">Factory methods</h3>
184184
import io.localwebservices.lws.TableSpec;
185185
import io.localwebservices.lws.StateMachineSpec;
186186

187-
// Auto-discover from Terraform .tf files
187+
// Auto-discover from HCL .tf files
188188
LwsSession session = LwsSession.fromHcl("../my-terraform-project");
189189

190190
// Explicit resource declaration

sdk-python.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ <h4>lws_session_from_cdk</h4>
205205
</div>
206206
<div class="lws-command">
207207
<h4>lws_session_from_hcl</h4>
208-
<p>Session-scoped session with auto-discovery from Terraform project. Configure path via <code>hcl_project_dir</code> fixture (default <code>"."</code>).</p>
208+
<p>Session-scoped session with auto-discovery from HCL project. Configure path via <code>hcl_project_dir</code> fixture (default <code>"."</code>).</p>
209209
</div>
210210
</div>
211211

@@ -303,7 +303,7 @@ <h3 class="section-subheading section-subheading--primary">Explicit resource dec
303303
client.put_item(TableName="Orders", Item={"id": {"S": "1"}})</code>
304304
</div>
305305

306-
<h3 class="section-subheading section-subheading--primary">Auto-discover from CDK or Terraform</h3>
306+
<h3 class="section-subheading section-subheading--primary">Auto-discover from CDK or HCL</h3>
307307
<div class="code-block config-example">
308308
<code>from lws_testing import LwsSession
309309

@@ -460,7 +460,7 @@ <h2>Log Capture</h2>
460460
<section class="section section-alt">
461461
<div class="container">
462462
<h2>Resource Discovery</h2>
463-
<p class="section-lead">Instead of declaring resources manually, let the SDK discover them from your CDK cloud assembly or Terraform HCL files.</p>
463+
<p class="section-lead">Instead of declaring resources manually, let the SDK discover them from your CDK cloud assembly or HCL files.</p>
464464

465465
<div class="feature-grid feature-grid--2col">
466466
<div class="feature-card">
@@ -473,7 +473,7 @@ <h3>CDK Discovery</h3>
473473
</div>
474474
<div class="feature-card">
475475
<div class="feature-icon">&#128295;</div>
476-
<h3>Terraform / HCL Discovery</h3>
476+
<h3>HCL Discovery</h3>
477477
<p>Parses <code>.tf</code> files in your project directory. No <code>terraform plan</code> or <code>terraform apply</code> needed.</p>
478478
<div class="code-block" style="margin-top: 16px;">
479479
<code>LwsSession.from_hcl("../my-terraform-project")</code>

sdks.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ <h3>Java</h3>
6464
<div class="lang-card-icon"><img src="https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/go/go-original-wordmark.svg" alt="Go" width="48" height="48"></div>
6565
<div class="lang-badge lang-badge--available">Available</div>
6666
<h3>Go</h3>
67-
<p>Go testing package integration, AWS SDK v2 clients, auto-discovery from Terraform</p>
67+
<p>Go testing package integration, AWS SDK v2 clients, auto-discovery from HCL</p>
6868
</a>
6969
</div>
7070

@@ -79,7 +79,7 @@ <h3>ldk dev (local server)</h3>
7979
<li>Works with any language or framework</li>
8080
<li>Supports hot reloading for Lambda handlers</li>
8181
<li>Web dashboard at <code>/_ldk/gui</code></li>
82-
<li>Reads CDK or Terraform projects</li>
82+
<li>Reads CDK or HCL projects</li>
8383
</ul>
8484
</div>
8585
<div class="comparison-col comparison-after">
@@ -102,7 +102,7 @@ <h3 class="section-subheading">Python SDK Highlights</h3>
102102
<div class="feature-card">
103103
<div class="feature-icon">&#128260;</div>
104104
<h3>LwsSession</h3>
105-
<p>A single context manager that starts all your services. Declare tables, queues, buckets, topics, state machines, parameters, and secrets — or auto-discover them from a CDK or Terraform project.</p>
105+
<p>A single context manager that starts all your services. Declare tables, queues, buckets, topics, state machines, parameters, and secrets — or auto-discover them from a CDK or HCL project.</p>
106106
</div>
107107
<div class="feature-card">
108108
<div class="feature-icon">&#128101;</div>

0 commit comments

Comments
 (0)