site: review — Cursor Camp (graduates from find)

Single-image review of Neal Agarwal's Cursor Camp browser toy, reusing
the find's existing 1200×630 share card. New `play` category — none of
the existing buckets fit a web-toy, and the 2026-05-14 six-browser-games
bundle has 5+ other candidates that will graduate cleanly into it.
This commit is contained in:
2026-05-22 18:29:56 -04:00
parent f8c58dd84b
commit 4b34d2e5e0
5 changed files with 36 additions and 0 deletions
+7
View File
@@ -1106,3 +1106,10 @@ Pattern notes this run:
- **TidBITS continues 403**: 4 consecutive runs blocked to WebFetch. Try `curl` with Safari UA before next run; if also blocked, flag `fetch: skip`. - **TidBITS continues 403**: 4 consecutive runs blocked to WebFetch. Try `curl` with Safari UA before next run; if also blocked, flag `fetch: skip`.
- **OSXDaily mostly Apple-press-release territory this cycle**: very little actionable for the find brief — 11 of 12 most recent posts are iOS/macOS update news or deal announcements. Worth a `cadence: as-needed` flag — they still occasionally surface a real find (May 9 dial-up ISP was an example) but the signal-to-noise has degraded. - **OSXDaily mostly Apple-press-release territory this cycle**: very little actionable for the find brief — 11 of 12 most recent posts are iOS/macOS update news or deal announcements. Worth a `cadence: as-needed` flag — they still occasionally surface a real find (May 9 dial-up ISP was an example) but the signal-to-noise has degraded.
- **Eclectic Light essay-vs-tutorial split**: half of Howard Oakley's recent output is art-history essays ("On Reflection," "Medium and Message: Pottery") that don't fit our brief. The macOS-internals posts continue to be productive. No action — just a reminder that the source has two modes and one is off-brief. - **Eclectic Light essay-vs-tutorial split**: half of Howard Oakley's recent output is art-history essays ("On Reflection," "Medium and Message: Pottery") that don't fit our brief. The macOS-internals posts continue to be productive. No action — just a reminder that the source has two modes and one is off-brief.
## 2026-05-22 — review: cursor-camp-neal-fun
Graduated from find captured 2026-05-04, source: Kottke.org.
Hero: reused the find's existing hero.png — Neal Agarwal's canonical 1200×630 share card at `neal.fun/share-cards/cursor-camp.png`. Single-image review (no carousel) — the source page has the share card plus the campground itself, which is JS-rendered canvas, so static screenshots wouldn't add much.
Category: **`play` — new category proposed**. None of the existing categories (interface, indie, writing, etc.) fit a browser web-toy. The 2026-05-14 `six-browser-games` bundle already shows there are 5+ unbundled finds that would graduate cleanly into this category. New category page auto-generates at `/categories/play/`.
Bundle membership: cursor-camp-neal-fun is in `2026-05-14-six-browser-games` and remains so after promotion — the find lives, the review is the canonical long form.
@@ -8,6 +8,7 @@ topics:
- general-delight - general-delight
tags: [neal-fun, browser, play, web-toy] tags: [neal-fun, browser, play, web-toy]
description: "Another small browser-based delight from Neal Agarwal — a playground that turns the humble mouse cursor into the toy." description: "Another small browser-based delight from Neal Agarwal — a playground that turns the humble mouse cursor into the toy."
promotedTo: cursor-camp-neal-fun
--- ---
Neal.fun keeps shipping the kind of single-page browser experiences the early web promised — small, weird, requires no account, and you smile within five seconds. Cursor Camp puts the mouse pointer at the centre of the experience: a spinning wheel of cursor variants you can summon and play with. It takes about two minutes and you'll forward it to a friend. Neal.fun keeps shipping the kind of single-page browser experiences the early web promised — small, weird, requires no account, and you smile within five seconds. Cursor Camp puts the mouse pointer at the centre of the experience: a spinning wheel of cursor variants you can summon and play with. It takes about two minutes and you'll forward it to a friend.
Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

@@ -0,0 +1,26 @@
---
name: Cursor Camp
subtitle: Neal.fun's playground for browser cursors
date: 2026-05-22
category: play
tags: [browser, web-toy, neal-fun, play]
description: "A Neal Agarwal browser experiment in which the mouse cursor itself is the toy — open the page, summon a radial wheel of cursor variants, drag them around an animated camp. Five minutes, no signup."
link: https://neal.fun/cursor-camp/
linkText: neal.fun/cursor-camp
source: "Kottke.org"
fromFind: cursor-camp-neal-fun
---
![The Cursor Camp landing card by Neal Agarwal — a softly-illustrated campground with a radial wheel of cursor variants orbiting around the central tent.](./hero.png)
*A campground for your cursor.*
> A single Neal.fun page whose protagonist is the mouse pointer. Open the URL, summon a radial wheel of cursor variants, drag them around an animated camp — no account, no install, no monetisation, about five minutes from open to closed.
Neal.fun has been quietly running the best single-page web-toy studio on the internet for ten years — Stimulation Clicker, Internet Roadtrip, Asteroid Launcher, Spend Bill Gates' Money. Cursor Camp is the latest in the lineage: a softly-illustrated campground, and a radial wheel of cursor variants that orbits your pointer on demand. Click to summon, drag to play.
The trick is that the cursor is the protagonist, not the input device. Variants include a wand, a comet, a magnifying glass, a fishing rod, and about a dozen more, each with its own behaviour against the campground props — tents, fire pits, a lily-padded lake. Two minutes uncovers most; the variety is the whole point.
The infrastructure for this kind of thing barely exists anymore. Every other vendor of micro-entertainment is trying to graduate you to a subscription, an account, or an email capture. Neal's whole catalog ships under the older rules: one URL, no signup, no ads, no app. Cursor Camp is proof that those rules still produce work worth forwarding to a friend.
Desktop only — phones don't have cursors. Five minutes from open to closed; rewards re-visits less than some of Neal's earlier pieces (Internet Roadtrip, which you can lose hours to). But that's the brief: a small thing made well, free, and gone before you've started checking your phone.
+2
View File
@@ -5,6 +5,7 @@ import altTab from '../content/reviews/alt-tab/hero.jpg';
import apex from '../content/reviews/apex-markdown-processor/hero.png'; import apex from '../content/reviews/apex-markdown-processor/hero.png';
import bartender from '../content/reviews/bartender-6-dynamic-peninsula/peninsula.png'; import bartender from '../content/reviews/bartender-6-dynamic-peninsula/peninsula.png';
import blip from '../content/reviews/blip/hero.jpg'; import blip from '../content/reviews/blip/hero.jpg';
import cursorCamp from '../content/reviews/cursor-camp-neal-fun/hero.png';
import esproP7 from '../content/reviews/espro-p7-french-press/hero.jpg'; import esproP7 from '../content/reviews/espro-p7-french-press/hero.jpg';
import finalist from '../content/reviews/finalist/hero.png'; import finalist from '../content/reviews/finalist/hero.png';
import folderPeek from '../content/reviews/folder-peek/screenshot.png'; import folderPeek from '../content/reviews/folder-peek/screenshot.png';
@@ -42,6 +43,7 @@ export const heroes: Record<string, Hero | undefined> = {
'apex-markdown-processor': { kind: 'image', src: apex }, 'apex-markdown-processor': { kind: 'image', src: apex },
'bartender-6-dynamic-peninsula': { kind: 'image', src: bartender }, 'bartender-6-dynamic-peninsula': { kind: 'image', src: bartender },
blip: { kind: 'image', src: blip }, blip: { kind: 'image', src: blip },
'cursor-camp-neal-fun': { kind: 'image', src: cursorCamp },
'espro-p7-french-press': { kind: 'image', src: esproP7 }, 'espro-p7-french-press': { kind: 'image', src: esproP7 },
finalist: { kind: 'image', src: finalist }, finalist: { kind: 'image', src: finalist },
'folder-peek': { kind: 'image', src: folderPeek }, 'folder-peek': { kind: 'image', src: folderPeek },