---
title: "From hobby to real world: integrating the hard stuff with agents"
description: "The post documents building a production-oriented leaderboard for open-source Stripe Projects applications, where users submit projects, share links, and vote. Unlike an earlier transcription app, this project required authentication, multiple database tables, hosting, and controls limiting unauthenticated users to one vote per project. The agent initially selected Supabase for database and auth and Vercel for hosting, then added Upstash Redis after an in-memory rate limiter proved unsuitable for serverless enforcement. Supabase's two-emails-per-hour authentication limit prompted a human-directed migration to Clerk, after the agent proposed an unsuitable Twilio solution. The resulting MVP used five resources across four providers, took more than a day, and received separate security and performance audits before review."
---

# From hobby to real world: integrating the hard stuff with agents

[Stripe](https://yomu.fyi/company/stripe) · Anna Spysz · Jun 16, 2026

**Type:** Tutorial

## Summary

The post documents building a production-oriented leaderboard for open-source Stripe Projects applications, where users submit projects, share links, and vote. Unlike an earlier transcription app, this project required authentication, multiple database tables, hosting, and controls limiting unauthenticated users to one vote per project. The agent initially selected Supabase for database and auth and Vercel for hosting, then added Upstash Redis after an in-memory rate limiter proved unsuitable for serverless enforcement. Supabase's two-emails-per-hour authentication limit prompted a human-directed migration to Clerk, after the agent proposed an unsuitable Twilio solution. The resulting MVP used five resources across four providers, took more than a day, and received separate security and performance audits before review.

## Context

The project was intended to catalog and showcase open-source applications created with Stripe Projects and potentially support competitive hackathons. Although the leaderboard concept was simple, it required authentication, multiple database tables, hosting, project-submission limits, and voting-abuse prevention.

## Approach / What changed

The build used a detailed requirements document, a rough wireframe, and an agent operating in planning mode. The initial architecture used Supabase for database and authentication and Vercel for hosting; Upstash Redis was added for rate limiting, and Clerk later replaced Supabase Auth after its email limits proved unsuitable. The completed app was audited separately for security and performance.

## Takeaways

- An in-memory rate limiter was unsuitable for enforcing voting integrity on the serverless architecture, so the vote flow required server-side enforcement through an atomic database function and Upstash Redis.
- Supabase Auth permitted only two emails per hour for the project; replacing it with Clerk avoided setting up a custom SMTP or email service for the stated authentication need.
- Detailed requirements covering data models, styling, and UX reduced iteration, while the initial simplicity bias led the agent to choose a database-and-auth provider that later required migration.

**Tags:** [Architecture](https://yomu.fyi/topic/architecture), [Authentication](https://yomu.fyi/topic/authentication), [Deployment](https://yomu.fyi/topic/deployment), [Open Source](https://yomu.fyi/topic/open-source), [Redis](https://yomu.fyi/topic/redis)

- Source: [Stripe](https://stripe.dev/blog/integrating-services-with-agents-stripe-projects)
- Source URL: https://stripe.dev/blog/integrating-services-with-agents-stripe-projects
- Ingested by Yomu: 2026-08-29T01:12:47.605Z

[Read original post](https://stripe.dev/blog/integrating-services-with-agents-stripe-projects)
