local-serverless-stack 0.0.1
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/CHANGELOG.md +104 -0
- package/LICENSE +21 -0
- package/README.md +653 -0
- package/bin/cli.js +204 -0
- package/dist/server/dev/dynamo-proxy.d.ts +3 -0
- package/dist/server/dev/dynamo-proxy.d.ts.map +1 -0
- package/dist/server/dev/dynamo-proxy.js +35 -0
- package/dist/server/dev/dynamo-proxy.js.map +1 -0
- package/dist/server/index.d.ts +2 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +67 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/routes/resources.d.ts +3 -0
- package/dist/server/routes/resources.d.ts.map +1 -0
- package/dist/server/routes/resources.js +16 -0
- package/dist/server/routes/resources.js.map +1 -0
- package/dist/server/routes/services.d.ts +5 -0
- package/dist/server/routes/services.d.ts.map +1 -0
- package/dist/server/routes/services.js +217 -0
- package/dist/server/routes/services.js.map +1 -0
- package/dist/server/services/cache-manager.d.ts +21 -0
- package/dist/server/services/cache-manager.d.ts.map +1 -0
- package/dist/server/services/cache-manager.js +70 -0
- package/dist/server/services/cache-manager.js.map +1 -0
- package/dist/server/services/cloudformation-parser.d.ts +88 -0
- package/dist/server/services/cloudformation-parser.d.ts.map +1 -0
- package/dist/server/services/cloudformation-parser.js +112 -0
- package/dist/server/services/cloudformation-parser.js.map +1 -0
- package/dist/server/services/localstack-manager.d.ts +23 -0
- package/dist/server/services/localstack-manager.d.ts.map +1 -0
- package/dist/server/services/localstack-manager.js +142 -0
- package/dist/server/services/localstack-manager.js.map +1 -0
- package/dist/server/services/process-manager.d.ts +41 -0
- package/dist/server/services/process-manager.d.ts.map +1 -0
- package/dist/server/services/process-manager.js +119 -0
- package/dist/server/services/process-manager.js.map +1 -0
- package/dist/server/services/resource-provisioner.d.ts +37 -0
- package/dist/server/services/resource-provisioner.d.ts.map +1 -0
- package/dist/server/services/resource-provisioner.js +539 -0
- package/dist/server/services/resource-provisioner.js.map +1 -0
- package/dist/ui/assets/index-7WT0rkfU.css +1 -0
- package/dist/ui/assets/index-M0lXeUj-.js +19 -0
- package/dist/ui/index.html +16 -0
- package/package.json +89 -0
- package/packages/serverless-plugin/README.md +95 -0
- package/packages/serverless-plugin/dist/index.d.ts +2 -0
- package/packages/serverless-plugin/dist/index.d.ts.map +1 -0
- package/packages/serverless-plugin/dist/index.js +88 -0
- package/packages/serverless-plugin/dist/index.js.map +1 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.0.1] - 2026-01-23
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- 🎉 **Initial public release** of Local Serverless Stack (LSS)
|
|
13
|
+
- **CLI Tool**: Background process management with `lss start/stop/status/logs` commands
|
|
14
|
+
- **Orchestrator**: Express API server with embedded Vue 3 UI dashboard
|
|
15
|
+
- **LocalStack Integration**: Single centralized instance for all microservices
|
|
16
|
+
- **Auto-provisioning**: CloudFormation template parsing and resource creation
|
|
17
|
+
- **Lambda Proxies**: On-demand proxy generation for event source mappings
|
|
18
|
+
- **Event Source Mappings**: Automatic connection of DynamoDB/SQS/SNS to Lambda handlers
|
|
19
|
+
- **Serverless Plugin**: Auto-registration of services during `sls package`
|
|
20
|
+
- **Web UI**: Real-time dashboard for monitoring services and resources
|
|
21
|
+
- **Comprehensive Testing**: 34 integration tests with 100% pass rate
|
|
22
|
+
- **CI/CD Pipeline**: Automated testing and NPM publishing via GitHub Actions
|
|
23
|
+
- **Complete Documentation**: README, API docs, and examples
|
|
24
|
+
|
|
25
|
+
### Features
|
|
26
|
+
|
|
27
|
+
#### Core Capabilities
|
|
28
|
+
- Centralized LocalStack container management (port 4566)
|
|
29
|
+
- CloudFormation resource provisioning:
|
|
30
|
+
- DynamoDB tables with streams
|
|
31
|
+
- SQS queues with event mappings
|
|
32
|
+
- SNS topics with subscriptions
|
|
33
|
+
- Lambda proxies (on-demand creation)
|
|
34
|
+
- Event flow: AWS Service → Lambda Proxy → Serverless Offline
|
|
35
|
+
- Service registration via plugin or API
|
|
36
|
+
- Process management (PID files, background mode)
|
|
37
|
+
|
|
38
|
+
#### CLI Commands
|
|
39
|
+
- `lss start` - Start orchestrator in background
|
|
40
|
+
- `lss stop` - Stop orchestrator gracefully
|
|
41
|
+
- `lss status` - Check running status
|
|
42
|
+
- `lss logs` - View recent logs
|
|
43
|
+
- `lss help` - Display usage information
|
|
44
|
+
|
|
45
|
+
#### API Endpoints
|
|
46
|
+
- `POST /api/services/register` - Register new service
|
|
47
|
+
- `GET /api/services` - List all services
|
|
48
|
+
- `DELETE /api/services/:name` - Remove service
|
|
49
|
+
- `GET /api/resources` - List provisioned resources
|
|
50
|
+
- `GET /api/health` - Health check
|
|
51
|
+
|
|
52
|
+
#### Optimizations
|
|
53
|
+
- Lambda functions created only on-demand (not duplicated)
|
|
54
|
+
- Proxy functions forward to serverless-offline HTTP invoke
|
|
55
|
+
- Event transformation for DynamoDB streams, SQS messages, SNS notifications
|
|
56
|
+
- Efficient CloudFormation intrinsic function resolution
|
|
57
|
+
|
|
58
|
+
### Testing
|
|
59
|
+
- **CLI Tests**: 10/10 passing
|
|
60
|
+
- **Orchestrator Tests**: 12/12 passing
|
|
61
|
+
- **Plugin Tests**: 6/6 passing
|
|
62
|
+
- **Smoke Tests**: 6/6 passing
|
|
63
|
+
- **Total Coverage**: 34/34 tests (100%)
|
|
64
|
+
|
|
65
|
+
### Development
|
|
66
|
+
- TypeScript throughout
|
|
67
|
+
- ESM modules
|
|
68
|
+
- Vue 3 with Composition API
|
|
69
|
+
- Express.js server
|
|
70
|
+
- AWS SDK v3
|
|
71
|
+
- Jest for testing
|
|
72
|
+
- GitHub Actions for CI/CD
|
|
73
|
+
|
|
74
|
+
### Documentation
|
|
75
|
+
- Complete README with quick start guide
|
|
76
|
+
- Architecture diagrams (Mermaid)
|
|
77
|
+
- API documentation
|
|
78
|
+
- Plugin integration examples
|
|
79
|
+
- Release process guide
|
|
80
|
+
- Contribution guidelines
|
|
81
|
+
|
|
82
|
+
### Known Limitations
|
|
83
|
+
- Requires Docker for LocalStack
|
|
84
|
+
- Tested on Linux (Ubuntu/Debian)
|
|
85
|
+
- Node.js >= 18 required
|
|
86
|
+
- Serverless Framework >= 3.0 required
|
|
87
|
+
|
|
88
|
+
### Breaking Changes
|
|
89
|
+
None (initial release)
|
|
90
|
+
|
|
91
|
+
### Migration Guide
|
|
92
|
+
Not applicable (initial release)
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## [Unreleased]
|
|
97
|
+
|
|
98
|
+
### Planned Features
|
|
99
|
+
- S3 bucket provisioning
|
|
100
|
+
- EventBridge integration
|
|
101
|
+
- Enhanced UI with real-time updates
|
|
102
|
+
- Multi-region support
|
|
103
|
+
- CloudWatch logs integration
|
|
104
|
+
- Improved error handling and validation
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 LSS Contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|