豆豆友情提示:这是一个非官方 GitHub 代理镜像,主要用于网络测试或访问加速。请勿在此进行登录、注册或处理任何敏感信息。进行这些操作请务必访问官方网站 github.com。 Raw 内容也通过此代理提供。
Skip to content

Commit b72c0fd

Browse files
committed
Update README for v0.5.0 — 29 services
1 parent 1540197 commit b72c0fd

File tree

1 file changed

+113
-64
lines changed

1 file changed

+113
-64
lines changed

README.md

Lines changed: 113 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,96 +1,126 @@
11
# ☁️ CloudDev
2-
2+
33
**A free, open-source local AWS emulator — the self-hosted alternative to LocalStack.**
4-
5-
CloudDev runs 23 AWS services locally as a single Go binary with zero runtime dependencies. Built for developers who want fast, offline AWS development without cloud costs or vendor lock-in.
4+
5+
CloudDev runs 29 AWS services locally as a single Go binary with zero runtime dependencies. Built for developers who want fast, offline AWS development without cloud costs or vendor lock-in.
66

77
[![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)
88
[![Go Version](https://img.shields.io/badge/go-1.22-blue.svg)](https://golang.org)
9-
[![Version](https://img.shields.io/badge/version-v0.4.0-green.svg)](https://github.com/Jeffrin-dev/CloudDev/releases)
9+
[![Version](https://img.shields.io/badge/version-v0.5.0-green.svg)](https://github.com/Jeffrin-dev/CloudDev/releases)
1010

1111
---
1212

1313
## ✨ Features
14-
15-
- **23 AWS services** emulated locally — S3, DynamoDB, Lambda, SQS (+ FIFO), SNS, API Gateway, IAM, STS, KMS, CloudFormation, Step Functions, EventBridge, Secrets Manager, CloudWatch Logs, CloudWatch Metrics, ElastiCache, Cognito, Lambda Layers, X-Ray, Route53, SSM Parameter Store, and Rekognition
14+
15+
- **29 AWS services** emulated locally — S3, DynamoDB, DynamoDB Streams, Lambda, Lambda Layers, Lambda Function URLs, SQS (+ FIFO), SNS, API Gateway, API Gateway v2, IAM, STS, KMS, CloudFormation, Step Functions, EventBridge, CloudWatch Events, Secrets Manager, CloudWatch Logs, CloudWatch Metrics, ElastiCache, Cognito, X-Ray, Route53, SSM Parameter Store, Rekognition, SES, and Bedrock
1616
- **Single binary** — no Docker, no Python, no Java runtime required
1717
- **Zero config** — works out of the box with your existing AWS CLI and SDKs
1818
- **Web dashboard** — real-time service status cards at `localhost:4580`
1919
- **IaC support** — auto-detects Terraform, CloudFormation, and Kubernetes configs
2020
- **Lambda hot reload** — instant function updates without restarts
2121
- **Data persistence** — state survives restarts via `~/.clouddev/state.json`
2222
- **Cost estimator** — see estimated AWS costs for your local workloads
23-
23+
2424
---
25-
25+
2626
## 🚀 Quick Start
27-
27+
2828
### Install
29-
29+
3030
```bash
3131
git clone https://github.com/Jeffrin-dev/CloudDev.git
3232
cd CloudDev
3333
go build -o clouddev .
3434
```
35-
35+
3636
### Initialize and Start
37-
37+
3838
```bash
3939
./clouddev init my-app
4040
cd my-app
4141
../clouddev up
4242
```
43-
43+
4444
### Use with AWS CLI
45-
45+
4646
```bash
4747
# S3
4848
aws --endpoint-url=http://localhost:4566 s3 mb s3://my-bucket
49-
49+
5050
# DynamoDB
5151
aws --endpoint-url=http://localhost:4569 dynamodb list-tables
52-
52+
53+
# DynamoDB Streams
54+
aws --endpoint-url=http://localhost:4570 dynamodbstreams list-streams
55+
56+
# Lambda
57+
aws --endpoint-url=http://localhost:4574 lambda list-functions
58+
59+
# Lambda Function URLs
60+
curl -X POST http://localhost:4595/2021-10-31/functions/MyFunc/url \
61+
-H "Content-Type: application/json" \
62+
-d '{"AuthType":"NONE"}'
63+
64+
# SQS
65+
aws --endpoint-url=http://localhost:4576 sqs create-queue --queue-name my-queue
66+
67+
# SNS
68+
aws --endpoint-url=http://localhost:4575 sns create-topic --name my-topic
69+
70+
# API Gateway v2
71+
curl -X POST http://localhost:4573/v2/apis \
72+
-H "Content-Type: application/json" \
73+
-d '{"Name":"MyAPI","ProtocolType":"HTTP"}'
74+
5375
# KMS
5476
aws --endpoint-url=http://localhost:4599 kms create-key --description "my-key"
55-
77+
5678
# SSM Parameter Store
5779
aws --endpoint-url=http://localhost:4583 ssm put-parameter \
5880
--name "/myapp/db/host" --value "localhost" --type String
59-
81+
6082
# CloudWatch Metrics
6183
aws --endpoint-url=http://localhost:4582 cloudwatch put-metric-data \
6284
--namespace "MyApp" --metric-name "RequestCount" --value 42 --unit Count
63-
85+
86+
# CloudWatch Events
87+
aws --endpoint-url=http://localhost:4590 events put-rule \
88+
--name MyRule --schedule-expression "rate(5 minutes)" --state ENABLED
89+
90+
# SES
91+
aws --endpoint-url=http://localhost:4579 ses verify-email-identity \
92+
--email-address test@example.com
93+
6494
# Route53
6595
aws --endpoint-url=http://localhost:4589 route53 create-hosted-zone \
6696
--name example.com --caller-reference ref-1
67-
97+
6898
# X-Ray
6999
aws xray put-trace-segments \
70100
--endpoint-url http://localhost:4588 \
71101
--trace-segment-documents '{"id":"seg-1","trace_id":"1-abc-123","name":"my-service"}'
72-
73-
# Lambda Layers
74-
aws --endpoint-url=http://localhost:4578 lambda publish-layer-version \
75-
--layer-name my-layer --description "My layer" \
76-
--compatible-runtimes python3.9 go1.x \
77-
--content S3Bucket=my-bucket,S3Key=my-layer.zip
78-
102+
79103
# Rekognition
80104
aws --endpoint-url=http://localhost:4594 rekognition detect-labels \
81105
--image '{"S3Object":{"Bucket":"my-bucket","Name":"photo.jpg"}}'
106+
107+
# Bedrock
108+
curl -X POST http://localhost:4591/foundation-models
109+
curl -X POST http://localhost:4591/model/anthropic.claude-3-sonnet-20240229-v1:0/invoke \
110+
-H "Content-Type: application/json" \
111+
-d '{"prompt":"Hello!","max_tokens_to_sample":100}'
82112
```
83-
113+
84114
---
85-
115+
86116
## 📦 Services & Ports
87-
88-
| Service | Port | Version |
117+
118+
| Service | Port | Since |
89119
|---|---|---|
90120
| S3 | 4566 | v0.1.0 |
91121
| DynamoDB | 4569 | v0.1.0 |
92122
| Lambda | 4574 | v0.1.0 |
93-
| SQS (+ FIFO) | 4576 | v0.1.0 / v0.4.0 |
123+
| SQS (+ FIFO) | 4576 | v0.1.0 |
94124
| API Gateway | 4572 | v0.1.0 |
95125
| Dashboard | 4580 | v0.1.0 |
96126
| SNS | 4575 | v0.2.0 |
@@ -111,11 +141,17 @@ aws --endpoint-url=http://localhost:4594 rekognition detect-labels \
111141
| Route53 | 4589 | v0.4.0 |
112142
| SSM Parameter Store | 4583 | v0.4.0 |
113143
| Rekognition | 4594 | v0.4.0 |
114-
144+
| CloudWatch Events | 4590 | v0.5.0 |
145+
| SES | 4579 | v0.5.0 |
146+
| DynamoDB Streams | 4570 | v0.5.0 |
147+
| Lambda Function URLs | 4595 | v0.5.0 |
148+
| API Gateway v2 | 4573 | v0.5.0 |
149+
| Bedrock | 4591 | v0.5.0 |
150+
115151
---
116-
152+
117153
## 🗂️ Project Structure
118-
154+
119155
```
120156
clouddev/
121157
├── cmd/ # CLI commands (up, init, status)
@@ -129,17 +165,21 @@ clouddev/
129165
│ └── services/
130166
│ ├── s3/
131167
│ ├── dynamodb/
168+
│ ├── dynamodbstreams/
132169
│ ├── lambda/
133170
│ ├── lambdalayers/
171+
│ ├── lambdaurls/
134172
│ ├── sqs/
135173
│ ├── sns/
136174
│ ├── apigateway/
175+
│ ├── apigatewayv2/
137176
│ ├── iam/
138177
│ ├── sts/
139178
│ ├── kms/
140179
│ ├── cloudformation/
141180
│ ├── cloudwatchlogs/
142181
│ ├── cloudwatchmetrics/
182+
│ ├── cloudwatchevents/
143183
│ ├── stepfunctions/
144184
│ ├── eventbridge/
145185
│ ├── secretsmanager/
@@ -148,71 +188,80 @@ clouddev/
148188
│ ├── xray/
149189
│ ├── route53/
150190
│ ├── ssm/
151-
│ └── rekognition/
152-
├── clouddev.yml
191+
│ ├── ses/
192+
│ ├── rekognition/
193+
│ └── bedrock/
153194
├── go.mod
154195
└── main.go
155196
```
156-
197+
157198
---
158-
199+
159200
## ⚙️ Configuration
160-
201+
161202
```yaml
162203
services:
163204
s3: true
164205
dynamodb: true
165206
lambda: true
166207
sqs: true
167208
api_gateway: true
168-
209+
169210
ports:
170211
s3: 4566
171212
dynamodb: 4569
172213
lambda: 4574
173214
sqs: 4576
174215
api_gateway: 4572
175-
216+
176217
lambda:
177218
functions_dir: ./functions
178219
hot_reload: true
179220
```
180-
221+
181222
---
182-
223+
183224
## 🧪 Running Tests
184-
225+
185226
```bash
186227
go test ./...
187228
```
188-
229+
189230
---
190-
231+
191232
## 🛣️ Roadmap
192-
193-
- [ ] CloudWatch Events
194-
- [ ] SES email emulation
195-
- [ ] DynamoDB Streams
196-
- [ ] Lambda function URLs
197-
- [ ] API Gateway v2 (HTTP API)
198-
- [ ] Bedrock (mock LLM responses)
199-
233+
234+
### ✅ v0.1.0
235+
- [x] S3, DynamoDB, Lambda, SQS, API Gateway, Dashboard, IaC Parser
236+
237+
### ✅ v0.2.0
238+
- [x] SNS, Secrets Manager, CloudWatch Logs, Lambda Hot Reload, Data Persistence
239+
240+
### ✅ v0.3.0
241+
- [x] IAM, STS, KMS, CloudFormation, Step Functions, EventBridge, ElastiCache, Cognito
242+
243+
### ✅ v0.4.0
244+
- [x] CloudWatch Metrics, SQS FIFO, Lambda Layers, X-Ray, Route53, SSM Parameter Store, Rekognition
245+
246+
### ✅ v0.5.0
247+
- [x] CloudWatch Events, SES, DynamoDB Streams, Lambda Function URLs, API Gateway v2, Bedrock
248+
200249
---
201-
250+
202251
## 🤝 Contributing
203-
252+
204253
We welcome contributions! Please read [CONTRIBUTING.md](CONTRIBUTING.md) to get started.
205-
254+
206255
---
207-
256+
208257
## 📄 License
209-
258+
210259
Apache 2.0 — see [LICENSE](LICENSE) for details.
211-
260+
212261
---
213-
262+
214263
## ⭐ Star History
215-
264+
216265
If CloudDev saves you time or money, please consider giving it a ⭐ on GitHub!
217266

218-
> Built for devs
267+
> Built with Claude (Instructor) · Codex (Developer)

0 commit comments

Comments
 (0)