TalksAWS re:Invent 2025 - Developing Serverless Applications Locally with AWS and LocalStack (CNS415)
AWS re:Invent 2025 - Developing Serverless Applications Locally with AWS and LocalStack (CNS415)
Developing Serverless Applications Locally with AWS and LocalStack
Overview of LocalStack
LocalStack is a tool that provides local AWS sandboxes, allowing developers to test and develop serverless applications on their local machines without connecting to the cloud.
LocalStack currently supports over 120 AWS services, including Lambda, SQS, DynamoDB, IAM, and more.
LocalStack integrates with popular infrastructure-as-code tools like Terraform and AWS CDK, allowing developers to use their existing workflows.
Challenges of Serverless Development
The presentation highlighted four key challenges that serverless developers face:
1. Testing in the Cloud
Cloud-based validation and testing can slow down iteration cycles, as each code change requires a full deployment and validation process.
This forces developers to batch changes or make educated guesses rather than relying on real-time validation.
2. Context Switching Between Tools
Serverless development often requires using multiple tools, such as IDEs, CLIs, and resource emulators, which can create fragmented workflows and disrupt developer productivity.
Constantly switching between these tools increases the likelihood of errors and creates significant mental overhead.
3. Configuration Complexity
Maintaining separate configurations for local and cloud environments can lead to the "works on my machine" problem, as manual configurations are error-prone and time-consuming.
As applications grow in complexity, the maintenance burden of these configurations increases.
4. Integration Testing Challenges
Troubleshooting and testing serverless applications that rely on integrations with other AWS services, such as DynamoDB, S3, and SQS, can be particularly challenging.
The hidden complexity of these service integrations is often greater than the function code itself, leading developers to resort to testing in production, which is not recommended.
AWS and LocalStack Partnership
To address these challenges, AWS and LocalStack have partnered to provide a seamless development experience:
AWS Toolkit for VS Code Integration
The AWS Toolkit for VS Code now integrates directly with LocalStack, enabling a unified development experience.
This integration allows for one-click LocalStack setup, access to all emulated resources directly from the IDE, and easy switching between local and cloud resources.
The integration dramatically reduces the feedback loop, allowing changes to be validated in seconds locally rather than minutes in the cloud.
Ongoing Collaboration
AWS and LocalStack are working closely to ensure same-day launches of new AWS service features in the LocalStack emulator.
They are also focused on improving the fidelity of the LocalStack emulator to provide a high-quality "digital twin" of the cloud environment.
Additionally, they are enhancing the developer experience with features like improved debugging capabilities and AI-powered development tools.
Key Takeaways
LocalStack provides a powerful local development environment for serverless applications, addressing common challenges like testing, context switching, configuration complexity, and integration testing.
The integration between LocalStack and the AWS Toolkit for VS Code simplifies the development workflow, accelerates feedback loops, and enables a seamless transition between local and cloud environments.
The ongoing collaboration between AWS and LocalStack ensures that developers can access the latest AWS service features and capabilities in their local development environment.
By addressing these challenges, LocalStack and the AWS partnership aim to improve developer productivity, code quality, and the overall development experience for serverless applications.
These cookies are used to collect information about how you interact with this website and allow us to remember you. We use this information to improve and customize your browsing experience, as well as for analytics.
If you decline, your information won’t be tracked when you visit this website. A single cookie will be used in your browser to remember your preference.