Ever since I created my first POAP drop I’ve wished that I could see claims of POAPs in Feedbin. What a great way to keep informed of the tokens that people are claiming! As I created more POAPs I realized that I also would like to subscribe to other people and see what POAP events they are claiming. And as I played around more with them I realized it would be so useful to be able to hook POAP claims up to automation platforms like IFTTT, Zapier, or Make — all of which support RSS out of the box!

I’ve been going deep on all things AI and I wanted to experience vibe coding for real versus just reading blog posts about others doing it. I’m a big believer in playing directly with tech to learn it. So, why not try creating the thing I’ve always wanted with POAPs by vibe coding it?

I’ve now successfully created, and already an extensive user of, POAP2RSS! This simple service allows you to subscribe to RSS feeds for POAP events as well as addresses of collectors. It is magical and I love it already!

In the spirit of vibe coding let’s ask AI what it is.

What is vibe coding?
Vibe coding is a modern approach to software development that emphasizes creativity and collaboration with AI tools. It involves expressing coding intentions in plain language, allowing AI to transform these ideas into executable code, often without deep technical knowledge from the user. This method focuses on maintaining a creative flow and minimizing micromanagement in the coding process. The term was popularized by AI researcher Andrej Karpathy and is gaining traction as a way to democratize coding and make it more accessible to non-programmers. Karpathy IBM Willison

Let’s go! 🔥

Vibe Prototyping

First I’m going to share that I only realized I was prototyping a solution in retrospect. What I really did was go to Claude and start a new conversation.

Please create a Python function to run in AWS Lambda that will retrieve the list of collectors for a comma separated list of POAP Event ID's and then merge them into a single RSS feed. The items in the feed should include information for each token minted.
I'll create a Python function for AWS Lambda that retrieves POAP collectors and generates an RSS feed. This will use the POAP API to fetch token information and create a properly formatted RSS feed.

It created a new artifact and put about 250 lines of Python code in there. Voila! Now what?

Let me qualify my skills here. I can bang around in most languages reasonably well. I can navigate Python the best. I can read code very well. I’m pretty basic when it comes to writing it. I’m a solid scripter but can quickly get out of my league. This Python code was better than anything I could do but I was able to navigate it easily enough.

But what do I do now? I have an AWS account and have setup S3 buckets. I’ve never setup a Lambda function though. Let the vibes flow…

How do I setup the Lambda function?
I'll guide you through setting up the Lambda function step by step. Here are the complete instructions:

I got another artifact now with step-by-step directions on what to do in the AWS Console. Brilliant!

I followed the directions and then actually ran a test, which Claude told me how to do.

I ran this with a known valid event_id and I got this error:

{ "statusCode": 404, "body": "{\"error\": \"No tokens found for provided event IDs\"}" }
The issue is likely with the POAP API endpoint or authentication. Let me search for the current POAP API documentation to see what's changed.

Great! I found the issue. The POAP API now requires API keys for authentication, and the endpoint documentation shows that you need to include the header X-API-Key={apikey} where {apikey} is your unique API key. Also, the correct endpoint for getting event tokens is /event/{id}/poaps which returns paginated info on the token holders including the token ID, POAP transfer count, and the owner's information like address, amount of POAPs owned, and ENS.

Claude and I went back and forth like this for a while with me running the Lambda, an error coming back, me sharing the error back to Claude, it making updates and me applying those. And then…

it worked!
Excellent! 🎉 That's fantastic news! You now have a fully working POAP RSS feed generator.

I hit a big stumble getting routing working through API Gateway to the Lambda function and Claude corrected me when I started going the wrong way.

CORS is not enabled. Is that a problem?
CORS isn't the issue here! CORS only affects browser-based requests when JavaScript tries to access your API from a different domain. Since you're getting a response (even if it's an error), the request is reaching your Lambda function fine.

Okay Claude — got it! 🫡

After this session I had a working prototype. The code was ugly. It turned out we needed to include OAuth support and added that much later. The design of the API endpoint was bad but it was working. It only took about an hour but I had explored this surface area deeply. I knew broadly what the service should look like, what some of the edge cases were going to be, and what was required to integrate with the POAP API.

Now to come back later and turn this into something that would be real. I was about 1 hour into exploring this topic and now knew a lot.

I deleted the Lambda function and all of the configuration I had created. It was created trial and error and I wanted to now be more rigorous.

Expand Features

Creating the prototype gave me a bunch of notes and a much better understanding of what was going to be needed to make the solution work right. I wanted to make sure I wasn’t missing some things so I decided to turn to ChatGPT o-3 and Deep Research to explore the necessary features.

Please help me explore and expand the features for POAP2RSS service that provides an RSS feed to subscribe to claims from a POAP event. The POAP events do not have an RSS feed, so I want to create a service that provides an RSS feed for a user using the POAP API to populate the data.

I’m already considering:

  • Only include entries for most recent 20 claims
  • If no claims in 4 weeks, add an entry that states that and suggests the user remove the feed. Change this for every additional week and change the RSS feed ID so it will show up as new to the user.
  • Provide ENS names in the RSS item and set the Author of the item to the ENS name or address that claimed the token. Set the date and time of the item to the collected time.
  • Add an initial item to all feeds that shows the description of the POAP Event and uses the timestamp for the event.
  • Use DynamoDB to cache results from POAP API for 15 minutes
Please help me explore and expand the features for POAP2RSS service that provides an RSS feed to subscribe to claims from a POAP event. The POAP events do not have an RSS feed, so I want to create a service that provides an RSS feed for a user using the POAP API to populate the data.
It is for any user including all three of those, however I suspect it will be most frequently used by the creator of the POAP event to monitor claims. I also expect it will be used in Automation -- for example to send a message anytime a claim is made by connecting the RSS feed to something like Zapier. The RSS feed should be fully standard so it can be used in any way desired.

Thanks, that context is very helpful. I’ll explore and expand on potential features for the POAP2RSS service that creates a standard RSS feed from POAP event claims, targeting usability for event creators, collectors, and automation tools like Zapier. I’ll also examine best practices from similar services and technical considerations for maximizing compatibility and reliability.

I’ll get back to you shortly with ideas and suggestions.