{"slug": "kakapo-party", "title": "Kākāpō Party", "summary": "Simon Willison used Anthropic's Claude Opus 5.5 to generate an HTML5 canvas pixel-art animation of at least 20 kākāpō parrots partying with confetti, then had a local Claude Code session drive Playwright to record a 15-second video of the page for his closing keynote at the WeAreDevelopers World Congress North America. The Playwright script spread 10 clicks across the 1280x720 viewport between 3.0 and 13.2 seconds to trigger the confetti effect, and Claude Code produced the video from the local file:///Users/simon/Downloads/kakapo-party.html page.", "body_md": "**Tool:** [Kākāpō Party](https://tools.simonwillison.net/kakapo-party)\n\nI gave presented a closing keynote for the [WeAreDevelopers World Congress North America](https://www.wearedevelopers.com/world-congress-north-america) yesterday. As [a STAR moment](https://simonwillison.net/2019/Dec/10/better-presentations/) I decided to weave in references to the record breaking [kākāpō breeding season](https://www.doc.govt.nz/news/media-releases/2026-media-releases/kakapo-population-reaches-new-milestone/) we had in 2026.\n\nFor my closing slide I wanted to celebrate, and I had seen some buzz around how good Claude Opus 5.5 was at creating pixel art animations. So I rounded up three Kakapo photos from Google image search and dropped them into Claude with this prompt:\n\n`Here are some photos of kakapo parrots just to remind you what they look like`\n\n`I need you to make an animation in animated pixel art on HTML 5 canvas of obviously pixel art kakapo jumping up and down having a party with confetti and suchlike - there should be at least 20 of them`\n\nHere's [the transcript](https://claude.ai/share/43bec0be-a0a3-4737-bfac-34894af34ddc), and this is the [resulting page](https://tools.simonwillison.net/kakapo-party). It's pretty great!\n\nI wanted to embed it in a Keynote presentation file, so I downloaded the HTML and told a local Claude Code session:\n\n`Make me a video of file:///Users/simon/Downloads/kakapo-party.html - you need to load it in a browser and click on it a few times to get the confetti effect, the video should be 15s long`\n\n`don't start clicking until 3s in`\n\n`make sure several clicks are spread around the clickable area`\n\nClaude Code used Playwright ([transcript here](https://gisthost.github.io/?368b481fba654c4fb84d90188da77581/page-001.html)) and produced this video, which was exactly what I needed for my final slide:\n\nHere's the full Playwright script it used, which was pleasingly short:\n\n``` python\n# /// script\n# dependencies = [\"playwright\"]\n# ///\nimport time\nfrom playwright.sync_api import sync_playwright\nW, H = 1280, 720\n# Canvas fills the viewport; spread clicks across corners, edges and centre\nclicks = [\n    (3.0, 640, 360),   # centre\n    (4.2, 160, 120),   # top-left\n    (5.4, 1120, 120),  # top-right\n    (6.6, 180, 600),   # bottom-left\n    (7.8, 1100, 600),  # bottom-right\n    (9.0, 640, 100),   # top-centre\n    (10.0, 380, 380),  # mid-left\n    (11.0, 900, 380),  # mid-right\n    (12.2, 640, 620),  # bottom-centre\n    (13.2, 640, 300),  # finale centre\n]\nwith sync_playwright() as p:\n    b = p.chromium.launch()\n    ctx = b.new_context(viewport={\"width\":W,\"height\":H}, record_video_dir=\"vids\", record_video_size={\"width\":W,\"height\":H})\n    page = ctx.new_page()\n    t0 = time.time()\n    page.goto(\"file:///Users/simon/Downloads/kakapo-party.html\")\n    for t,x,y in clicks:\n        time.sleep(max(0, t-(time.time()-t0)))\n        page.mouse.click(x,y)\n    time.sleep(max(0, 16.0-(time.time()-t0)))\n    ctx.close(); b.close()\n```\n\nTags: [animation](https://simonwillison.net/tags/animation), [speaking](https://simonwillison.net/tags/speaking), [ai](https://simonwillison.net/tags/ai), [kakapo](https://simonwillison.net/tags/kakapo), [playwright](https://simonwillison.net/tags/playwright), [generative-ai](https://simonwillison.net/tags/generative-ai), [llms](https://simonwillison.net/tags/llms), [anthropic](https://simonwillison.net/tags/anthropic), [claude](https://simonwillison.net/tags/claude), [claude-code](https://simonwillison.net/tags/claude-code)", "url": "https://wpnews.pro/news/kakapo-party", "canonical_source": "https://simonwillison.net/2026/Sep/26/kakapo-party/", "published_at": "2026-09-26 23:39:06+00:00", "updated_at": "2026-09-27 00:01:30.395834+00:00", "lang": "en", "topics": ["generative-ai", "ai-tools", "ai-agents", "large-language-models"], "entities": ["Simon Willison", "Claude Opus 5.5", "Claude Code", "Anthropic", "Playwright", "WeAreDevelopers World Congress North America", "Kākāpō Party"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/kakapo-party", "markdown": "https://wpnews.pro/news/kakapo-party.md", "text": "https://wpnews.pro/news/kakapo-party.txt", "jsonld": "https://wpnews.pro/news/kakapo-party.jsonld"}}