AI Briefing
KO

Simon Willison builds an iNaturalist sightings recording app

·2026.05.02 04:35

Key point

Simon Willison built an iNaturalist observation-recording app using Claude Code on his phone.

Details

Simon Willison used Claude Code for web on just his phone while camping to build iNaturalist Sightings.

To group observations scattered across two iNaturalist accounts by time and location, he first built a Python CLI called inaturalist-clumper. The default rule groups observations within 2 hours and 5km into a single clump.

He then set up a Git scraping repository, simonw/inaturalist-clumps, to save the results as clumps.json, and had JavaScript read the JSON hosted on GitHub directly via CORS.

Finally, he ran a prompt against his own simonw/tools repository to generate inat-sightings.html.

The resulting page uses fetch() to load this JSON and lays out the observations on a single screen.

  • Thumbnails use small.jpg with loading=lazy applied.
  • Clicking a thumbnail shows large.jpg in a modal.
  • Where possible, common species names are also displayed.

This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.

Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.