惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
WordPress大学
WordPress大学
S
SegmentFault 最新的问题
博客园 - Franky
V
V2EX
Y
Y Combinator Blog
Google DeepMind News
Google DeepMind News
J
Java Code Geeks
T
The Blog of Author Tim Ferriss
罗磊的独立博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Jina AI
Jina AI
博客园 - 叶小钗
F
Fortinet All Blogs
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
A
About on SuperTechFans
M
MIT News - Artificial intelligence
云风的 BLOG
云风的 BLOG
Last Week in AI
Last Week in AI
D
Docker
博客园 - 【当耐特】
阮一峰的网络日志
阮一峰的网络日志

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
I Built a Sandbox for Neal.fun's Cursor Camp — Here's Wha...
dundun sun · 2026-06-03 · via DEV Community

A few months ago I opened Neal Agarwal's Cursor Camp for the first time. You know that feeling when a website completely derails your afternoon? That was me. I spent two hours just watching dozens of cursors wander around a pixel campground, kicking a soccer ball, sitting by the fire.

And then I thought: what if this world kept going even after I closed the tab?

That question eventually turned into CursorCamp Sandbox, a fully interactive browser companion built from scratch. No game engines, just Canvas 2D, SVG, and TypeScript. Here's how a moment of curiosity became a 6,000-line obsession.

The Moment It Clicked
The original Cursor Camp is a genius piece of ambient design. There are no objectives, no tutorials, no signups. You just move your cursor and discover things. The campers (other cursors) wander around doing their own thing. It feels alive, but it's ephemeral — close the tab and it's gone.

I wanted to make a version that felt permanent. A place you could return to. Same whimsical energy, but with persistence, more interactivity, and deeper secrets to uncover.

What I Actually Built
The sandbox ended up with:

55 AI campers, each with a 5-phase movement state machine (idle → accelerate → cruise → decelerate → overshoot). They wander between points of interest, occasionally chasing the soccer ball, randomly joining and leaving throughout the day
An 8,000×5,000 pixel procedurally-generated world with oceans, rivers, roads, a soccer field, running track, vegetable garden, and scattered decorations — all generated from math, no external assets
Dynamic weather — rain and snow with particle systems, wind that drifts over time
Spatial audio — 11 independent sound sources that fade as you move around. The DJ booth has a 4-track playlist that crossfades
17 hidden seashells, a soccer goal, interactive houses you can enter, and benches you can rest on
The entire thing runs at 60fps in a browser with zero dependencies beyond React and Next.js.

The Hardest Part Wasn't the Code
It was resisting the urge to add objectives. I kept wanting to add quests, levels, progression systems. But that would've missed the point. The magic of Cursor Camp is that nothing asks anything of you. You're just... there.

The hardest technical challenge was the camera system. With an 8,000×5,000 world, you can't just center on the player — that would be disorienting. I ended up with a dead-zone approach: the camera only pans when your cursor approaches the screen edges, giving the feel of looking around a physical space.

Why I'm Sharing This
Fan projects don't need to be commercial to be worth building. This one taught me more about Canvas rendering, procedural generation, and game feel than any tutorial ever could. And it brought a small community of people who just wanted to hang out at a virtual campfire.

If you've ever been inspired by someone else's creative work, I encourage you to build something in response. Not a clone, not a competitor — just your own take. It's the most fun you'll have coding.

The sandbox is free and open at https://www.cursorcamp-sandbox.com. No signup, no downloads, no objectives. Just a camp that's always open.

Built with React, Next.js, TypeScript, and exactly zero game engines.