If you’ve ever worked with AWS Step Functions, you know the struggle. Debugging workflows locally? A nightmare. Testing small changes? Deploy, wait, check logs, repeat. The experience has been far from smooth—until now.
AWS just launched a Step Functions extension for VS Code, and it’s a huge step forward. But as great as this update is, one big question remains: Why is this limited to VS Code? What about IntelliJ, Eclipse, and other IDEs?
Let’s break down what’s new, why it matters, and what AWS should do next.
The Pain Before This Update
Before this extension, working with AWS Step Functions was a constant back-and-forth between AWS Console and local development. If you wanted to:
✅ Debug a workflow? You’d rely on CloudWatch logs—which meant extra time and effort.
✅ Test changes? You had to deploy to AWS every time—even for minor tweaks.
✅ Validate the output of an individual state? Practically impossible without running the full workflow.
For developers, this meant longer development cycles, slower debugging, and more friction when building serverless workflows.
What’s New in the AWS Step Functions IDE Extension?
AWS finally heard our pain and introduced an enhanced local development experience for Step Functions in VS Code. Here’s what’s cool about it:
🔹 Visualize workflows directly in VS Code – No more switching between AWS Console and your IDE.
🔹 Run Step Functions locally – Test before deploying, saving time and resources.
🔹 Live debugging support – Easily catch and fix errors without digging through logs.
🔹 Seamless AWS integration – Sync changes faster without losing context.
🔹 State-by-state testing – Validate the output of an individual state by providing custom input, making development quicker and more efficient.
This last feature—state-level testing—is a game changer. Now, you don’t have to execute the entire workflow just to see if a specific state is working. You can provide input, get instant validation, and debug much faster—all from your IDE.
Step Functions in Action – VS Code Workflow Example
Below is a sample Step Functions workflow I tested using the new VS Code extension. The workflow consists of multiple states, invoking two AWS Lambda functions with error handling and retry logic.
Step Functions JSON Definition:
{
"Comment": "An example AWS Step Function with multiple Lambda functions and states",
"StartAt": "StartState",
"States": {
"StartState": {
"Type": "Pass",
"Next": "InvokeFirstLambda"
},
"InvokeFirstLambda": {
"Type": "Task",
"Resource": "arn:aws:lambda:us-east-1:123456789012:function:FirstLambda",
"Next": "CheckResult"
},
"CheckResult": {
"Type": "Choice",
"Choices": [
{
"Variable": "$.status",
"StringEquals": "success",
"Next": "InvokeSecondLambda"
},
{
"Variable": "$.status",
"StringEquals": "retry",
"Next": "WaitState"
}
],
"Default": "FailState"
},
"WaitState": {
"Type": "Wait",
"Seconds": 5,
"Next": "InvokeFirstLambda"
},
"InvokeSecondLambda": {
"Type": "Task",
"Resource": "arn:aws:lambda:us-east-1:123456789012:function:SecondLambda",
"Next": "FinalSuccess"
},
"FinalSuccess": {
"Type": "Succeed"
},
"FailState": {
"Type": "Fail",
"Error": "ExecutionFailed",
"Cause": "The process failed after retry"
}
}
}
With the new testing feature, I was able to test individual states by providing sample input and verifying their output—right inside VS Code. This cut down my development time significantly compared to deploying every change to AWS.
Why This Matters
This update is a huge productivity boost for developers using Step Functions. We no longer have to:
🚫 Constantly deploy for minor updates
🚫 Guess what’s happening in our workflows
🚫 Waste time switching between the AWS Console and local code
🚫 Debug an entire workflow just to validate a single state
With this new VS Code extension, we can now test, visualize, and debug workflows faster than ever.
But there’s a catch…
The Missing Piece – What About IntelliJ & Eclipse?
AWS made a great move by integrating Step Functions with VS Code, but let’s be honest—not everyone uses VS Code.
Many enterprise developers rely on IntelliJ, Eclipse, or JetBrains IDEs. So why is this extension limited to just one IDE?
AWS already provides toolkits for IntelliJ and Eclipse for services like Lambda and CloudFormation. Expanding Step Functions support to these IDEs would:
✅ Reach a wider audience of developers who don’t use VS Code
✅ Make AWS Step Functions more accessible in enterprise environments
✅ Provide a consistent development experience across multiple IDEs
Final Thoughts
AWS is heading in the right direction by improving local development for Step Functions, but they shouldn’t stop at VS Code.
The state-by-state testing feature is one of the most exciting additions, making Step Function development faster and easier. However, expanding this capability beyond VS Code would truly unlock its full potential.
I’d love to see AWS bring this to IntelliJ, Eclipse, and other popular IDEs.
What do you think?
👉 Do you use AWS Step Functions in VS Code?
👉 Would you like to see this extension in IntelliJ or Eclipse?
👉 How has state testing improved your workflow?
Let’s start the conversation!
Top comments (0)