Skip to content

Add sighting beat type backed by iNaturalist clumps#668

Merged
simonw merged 1 commit intomainfrom
claude/add-sightings-beat-type-WMExk
May 2, 2026
Merged

Add sighting beat type backed by iNaturalist clumps#668
simonw merged 1 commit intomainfrom
claude/add-sightings-beat-type-WMExk

Conversation

@simonw
Copy link
Copy Markdown
Owner

@simonw simonw commented May 2, 2026

Clone simonw/tools to /tmp and look at inat-sightings.html

We are going to add a new type of beat called “sightings” based on that prototype

A sighting is a group of observations (a “clump” according to the API that uses) in a single beat, rendered using that image gallery component

The blog already has a mechanism for only loading the code for a web component if it is present on the page - we will use that

These sighting beats are shown with the date and time or time range similar to the inat-sightings.html prototype

We need an importer mechanism wired up on /admin/importers too

Run tests first. Build with red/green TDD and a mocked API response

Each sighting beat is a "clump" of iNaturalist observations rendered with
a new component (a renamed copy of the prototype
in simonw/tools so the existing stays untouched). The
component lazy-loads via the existing base.html querySelector mechanism.
Time ranges (single time, same-day, cross-day) are formatted from the
clump's started_at/ended_at metadata. Imports run from /admin/importers.

https://claude.ai/code/session_018CLLDeHNykeKaCbDauGALE

Each sighting beat is a "clump" of iNaturalist observations rendered with
a new <captioned-image-gallery> component (a renamed copy of the prototype
in simonw/tools so the existing <image-gallery> stays untouched). The
component lazy-loads via the existing base.html querySelector mechanism.
Time ranges (single time, same-day, cross-day) are formatted from the
clump's started_at/ended_at metadata. Imports run from /admin/importers.

https://claude.ai/code/session_018CLLDeHNykeKaCbDauGALE
@simonw simonw merged commit 52f55bf into main May 2, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants