aws / aws/aws-toolkit-vscode

Users can browse sample Lambda events to use as starting points for input into their Lambda handlers

Open
#106 1 comment 0 reactions 0 assignees View on GitHub
feature-request lambda sam
Dominant language
TypeScript
Stars
2k
Forks
807
Avg merge
10h 12m
Merged PRs (30d)
7

Description

Lambda invocations require a JSON "event". You can find sample events for AWS services [in the public docs](https://docs.aws.amazon.com/lambda/latest/dg/eventsources.html), but this requires the user to leave their IDE and isn't very discoverable.

* Create a "Sample Lambda Event Manager" view, and add it to the AWS viewCollection
* event manager tree would have two top level nodes: "Curated Events", and "Custom Events". This issue deals with the former (#107 deals with the latter)
* The [sample request manifest](https://github.com/aws/aws-toolkit-vscode/blob/dcb104db72acffec2a26c02e272f5940890d85e1/src/lambda/constants.ts#L13) references sample definitions, and hosted url locations. Each sample should be represented by a node on the tree
* Clicking on the node would download the sample event and open it in a new editor pane for user to see
* initial implementation is simple - no caching
* The manifest might have some structured information that groups/categorizes the events. Bonus marks for adding this structure into the tree

Later on, when we have the ability to Run/Debug Lambda Handlers locally, these events will be referenced as options to pass into the handler.

Contributor guide

Open the contributing guide

Research direction

Start with the sample request manifest in src/lambda/constants.ts and locate the AWS viewCollection and existing tree-view patterns. Review how the manifest references sample definitions and hosted URLs. Done means a Sample Lambda Event Manager exposes Curated Events, and selecting an event downloads it and opens it in a new editor without caching.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
devtools
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.