Feature type
Target plugin
Problem / motivation
As a developer working with AWS DynamoDB, I need a reliable local development environment that allows me to:
- Run integration tests without hitting AWS cloud services (avoiding costs and network latency)
- Develop and test DynamoDB-related features offline
- Set up consistent local environments across team members
- Quickly prototype DynamoDB table schemas and operations
Currently, setting up DynamoDB Local requires manual configuration of Docker containers, docker-compose files, and connection strings - a process that is error-prone and time-consuming, especially when onboarding new developers or setting up new projects.
Proposed solution
Create a new skill called dynamodb-local under developer-kit-aws that automates the setup and configuration of DynamoDB Local for both existing and new projects.
Skill Name
dynamodb-local (or aws-dynamodb-local-setup)
Expected Behavior
The skill should:
-
For new projects:
- Generate a complete
docker-compose.yml with DynamoDB Local configuration
- Create necessary directory structure for data persistence
- Provide sample configuration files for different languages (Java, Python, TypeScript, etc.)
- Include connection string templates and environment variable examples
-
For existing projects:
- Analyze the project structure to detect the programming language/framework
- Add DynamoDB Local configuration without breaking existing setups
- Update application configuration files (application.yml, .env, etc.) with local endpoint
- Provide migration instructions
-
Docker Configuration:
Based on AWS documentation, use the official amazon/dynamodb-local:latest image with:
services:
dynamodb-local:
command: "-jar DynamoDBLocal.jar -sharedDb -dbPath ./data"
image: "amazon/dynamodb-local:latest"
container_name: dynamodb-local
ports:
- "8000:8000"
volumes:
- "./docker/dynamodb:/home/dynamodblocal/data"
working_dir: /home/dynamodblocal
-
Language-specific configurations:
- Java/Spring Boot: Update
application-local.yml with spring.dynamodb.endpoint
- Python/Boto3: Provide
boto3.client() configuration snippet
- TypeScript: Provide AWS SDK v3 client configuration
- AWS CLI: Show
--endpoint-url http://localhost:8000 usage
-
Testing integration:
- Provide examples for setting up test containers with DynamoDB Local
- Include test utilities for table creation/cleanup
Example Prompts That Should Trigger This Skill
- "Help me set up DynamoDB Local for my project"
- "I need to run DynamoDB locally for testing"
- "Add DynamoDB Local docker configuration"
- "Configure local DynamoDB for integration tests"
- "Set up DynamoDB Local for my Spring Boot application"
Alternatives considered
- Manual setup: Developers manually copy-paste Docker configurations - inconsistent and error-prone
- DynamoDB Local in jar: Using the standalone JAR version - more complex setup than Docker
- Third-party DynamoDB emulators: Less reliable than AWS official solution
- Testcontainers: Good for tests, but doesn't solve the general development environment need
Additional context
AWS Documentation References
Connection Requirements
For local development, the following credentials are typically used (dummy values):
AWS_ACCESS_KEY_ID: 'DUMMYIDEXAMPLE'
AWS_SECRET_ACCESS_KEY: 'DUMMYEXAMPLEKEY'
REGION: 'us-east-1' (or any region)
Related Skills
This skill would complement existing AWS-related skills:
aws-rds-spring-boot-integration - similar pattern for database local setup
aws-cloudformation-dynamodb - for table schema definition
Testing Verification
After setup, developers should be able to:
# Start DynamoDB Local
docker-compose up -d dynamodb-local
# Verify connection
aws dynamodb list-tables --endpoint-url http://localhost:8000
Priority: Medium (enhances developer experience, reduces cloud costs during development)
Complexity: Low to Medium (well-documented AWS patterns, similar to existing RDS skill)
Feature type
Target plugin
Problem / motivation
As a developer working with AWS DynamoDB, I need a reliable local development environment that allows me to:
Currently, setting up DynamoDB Local requires manual configuration of Docker containers, docker-compose files, and connection strings - a process that is error-prone and time-consuming, especially when onboarding new developers or setting up new projects.
Proposed solution
Create a new skill called
dynamodb-localunderdeveloper-kit-awsthat automates the setup and configuration of DynamoDB Local for both existing and new projects.Skill Name
dynamodb-local(oraws-dynamodb-local-setup)Expected Behavior
The skill should:
For new projects:
docker-compose.ymlwith DynamoDB Local configurationFor existing projects:
Docker Configuration:
Based on AWS documentation, use the official
amazon/dynamodb-local:latestimage with:Language-specific configurations:
application-local.ymlwithspring.dynamodb.endpointboto3.client()configuration snippet--endpoint-url http://localhost:8000usageTesting integration:
Example Prompts That Should Trigger This Skill
Alternatives considered
Additional context
AWS Documentation References
amazon/dynamodb-local:latest8000http://localhost:8000Connection Requirements
For local development, the following credentials are typically used (dummy values):
AWS_ACCESS_KEY_ID: 'DUMMYIDEXAMPLE'AWS_SECRET_ACCESS_KEY: 'DUMMYEXAMPLEKEY'REGION: 'us-east-1'(or any region)Related Skills
This skill would complement existing AWS-related skills:
aws-rds-spring-boot-integration- similar pattern for database local setupaws-cloudformation-dynamodb- for table schema definitionTesting Verification
After setup, developers should be able to:
Priority: Medium (enhances developer experience, reduces cloud costs during development)
Complexity: Low to Medium (well-documented AWS patterns, similar to existing RDS skill)