Ben's Bites

Ben's Bites

Share this post

Ben's Bites
Ben's Bites
A real example of building with AI in 2025

A real example of building with AI in 2025

how I built an archive for ben’s bites by talking to many AIs

Keshav Jindal's avatar
Keshav Jindal
Aug 07, 2025
∙ Paid
3

Share this post

Ben's Bites
Ben's Bites
A real example of building with AI in 2025
Share

A couple of weeks ago, we put out a website. It’s a simple-looking thing: a search bar, a list of links, some filters. It lets you explore everything we’ve ever shared in the Ben’s Bites newsletter and see how many times each link was clicked.

This website is far from perfect. It has UI inconsistencies that still irk me, some messy data, and it doesn’t update automatically; I have to manually run a script and copy a file over every few days. By any professional software engineering standard, it’s a bit of a hack.

Yet, it’s a very good example, a tangible, working artifact, that shows what you can do with AI-assisted coding. This writeup is a breakdown of building that website and my thoughts on how to think about building things in this new era.

We'll cover the entire journey, from idea to a deployed web application:

  1. Finding the Private API: How we used standard browser tools to find the data we needed, even though Substack doesn't offer a public way to get it.

  2. Automating an Authenticated Browser: The non-trivial process of getting a script to act like a logged-in user, including the technical hurdles and how we solved them.

  3. AI-Assisted Scripting: The iterative back-and-forth with Claude Code to write, debug, and refine the Python scripts that gather and process our data.

  4. Designing and Building the Frontend: How we used one AI (Gemini) to scope the product and another (the Replit agent) to build the entire web interface.

  5. The Reality of the Workflow: An honest look at the manual steps still required to keep the archive updated.

So, let’s set the stage.

If you don’t know us, Ben’s Bites is a twice-a-week newsletter that compiles what’s hot in the AI world and our take on it. We use “Substack” to write the newsletter. As we’ve published hundreds of issues, we've accumulated thousands of links. A recurring request from our readers has been for a searchable archive—a single place where they could find every tool, article, or paper we've ever mentioned.

Substack, unfortunately, doesn’t have a public API (i.e. a way to pull data about your publication by making a request to Substack’s servers), but I can see that data in my dashboard when logged in on my local browser.

So, how do we get from data locked behind logins and make it public for users?

Step 1: Finding the Private API

If you can see data in your browser, there's always a way for your code to see it too. The question is how.

One approach is to have an AI literally look at the screen, like a human would. That’s what most agents today are trying (including ChatGPT Agent), but I’m not a big fan of those. It’s brittle and inefficient. Technically, all you are doing is sending a screenshot to the AI model and asking it all sorts of stuff from reading the data on the page, to finding which buttons need to be clicked and moving the cursor there. Even the best AI models are not great at it.

This post is for paid subscribers

Already a paid subscriber? Sign in
© 2025 Ben's Bites Ltd
Privacy ∙ Terms ∙ Collection notice
Start writingGet the app
Substack is the home for great culture

Share