{"slug": "a-3d-fruit-fly-on-macos-desktop-powered-by-the-real-flywire-connectome", "title": "A 3D fruit fly on macOS desktop powered by the real FlyWire connectome", "summary": "A new open-source macOS app, DesktopFly, simulates a 3D fruit fly on the desktop using a live spiking simulation of the real FlyWire connectome, with 23,210 neuron soma positions from FlyWire v783 and a 668-neuron circuit with ~19,000 synaptic connections. The fly reacts to cursor movement through real looming-detector neurons (LC4/LPLC2) and escapes only when the Giant Fiber neuron spikes, matching real fly behavior in ~4 ms. The project, available on GitHub, requires macOS 13+ and Xcode Command Line Tools, and offers an interactive brain window for optogenetic stimulation.", "body_md": "A 3D fruit fly that lives on your macOS desktop — driven by a live spiking\nsimulation of the real [FlyWire](https://codex.flywire.ai)\nconnectome. It walks across your windows, grooms, sleeps, and decides to flee\nyour cursor with the same neurons a real fly uses.\n\nThe fly's brain window: 23,210 real neuron soma positions from FlyWire v783,\nwith live spikes flashing at real neuron locations. The two glowing yellow\nmarkers are the Giant Fibers — the escape command neurons. Click any region\nto stimulate it.\n\n**23,210 neuron soma positions**(of 139,255 in FlyWire v783) render the rotating brain window, colored by super-class (FlyWire's coarse cell-type grouping).**A 668-neuron circuit with ~19,000 real synaptic connections**(synapse counts, signed by neurotransmitter prediction) runs as a 1 kHz leaky-integrate-and-fire (LIF) simulation:** LC4 (104) + LPLC2 (210)**looming-detector visual neurons** DNp01 / Giant Fiber (GF) (2)**— the escape command neuron** DNa01 + DNa02 (4)**steering neurons ·** DNp09 (2)**forward walking** DNg11 (6)**grooming ·** MDN (4)**backward walking (\"moonwalker\")** DNp02/DNp04/DNp11 (6)**escape-maneuver (wing) neurons- their 330 strongest partners, including ascending (proprioceptive) and sensory (wind) neurons\n\n**Escape is not scripted.** Your cursor's approach becomes looming input to the real LC4/LPLC2 cells; the fly takes off only when the Giant Fiber actually spikes through its real synapses — ~1,200 synapses of feedforward inhibition push back, which is why slow approaches are tolerated and fast lunges trigger escape in ~4 ms, just like the real animal.\n\nThe body itself is procedural (FlyWire is a brain connectome — no body geometry exists), with a tripod gait, visible wing-beat, altitude-scaled flight, grooming, and sleep postures.\n\nRequirements: **macOS 13+**, Xcode Command Line Tools (Swift 5.9+).\nNo permissions or entitlements needed — everything it senses\n(cursor, window frames, clicks-as-taps, thermal state) is permission-free.\n\n```\ngit clone https://github.com/DenisSergeevitch/desktop-fly.git\ncd desktop-fly\n./build.sh\n./DesktopFly\n```\n\nA 🪰 item appears in the menu bar; quit from there. The fly wanders your desktop on a transparent, click-through overlay — it never intercepts your mouse or keyboard.\n\n| item | effect |\n|---|---|\n| Pause / Resume | freeze the world |\n| Show/Hide Brain | toggle the live brain window |\n| Escape Test (loom) | inject a looming stimulus, watch the GF fire |\n| Move to Next Display | hop the fly across monitors (shown when >1 display) |\n| Add / Remove Fly | extra flies (only fly #1 carries the brain) |\n| Scare Flies | startle everyone |\n\n**The brain window is interactive**: hovering pauses the rotation; clicking a\nregion \"optogenetically\" stimulates the ~60 nearest circuit neurons for\n400 ms. The fly's reaction is whatever the real network does downstream —\nclick the Giant Fiber and it escapes; click DNg11 and it grooms; click one\nside's DNa01/02 and it turns.\n\n| body behavior | driven by |\n|---|---|\n| escape takeoff | DNp01 giant fiber spike |\n| walk vs. rest, walking speed | DNp09 rate |\n| steering | DNa01+DNa02 left−right rate difference |\n| grooming | DNg11 rate |\n| backward scoot | MDN burst |\n| nervous darting | LC4/LPLC2 population rate |\n| wing-beat effort, threat wing-raise | DNp02/04/11 rate |\n| spontaneous takeoff | whole-population arousal |\n\nThe loop also closes body→brain: the gait rhythm feeds the circuit's real ascending (proprioceptive) neurons in phase with the legs, and fast cursor motion stimulates its sensory (wind) partners.\n\n**Window terrain**: window top edges are ledges — the fly lands on them, walks along them, rides a window you drag, and startles when one closes under its feet.**Window looms**: a window appearing near the fly feeds the looming pathway; the circuit decides whether to flee your dialogs.** Clicks are substrate taps**; clicking next to the fly startles it through the wind→GF pathway.** Typing is vibration**(idle-time API — knows*when*keys were pressed, never which).**Circadian rhythm**: dawn/dusk activity peaks, midday siesta, night quiescence.** Sleep**: idle at night → it sleeps, breathing slowly, with raised arousal threshold; it grooms after waking.** Temperature**: flies are ectotherms — a hot Mac is a faster fly.\n\n`data/`\n\nships with compact derived files. To rebuild them from the raw\nFlyWire Codex dumps (~60 MB download):\n\n```\nmkdir -p /tmp/flywire && cd /tmp/flywire\nB=https://storage.googleapis.com/flywire-data/codex/data/fafb/783\ncurl -O \"$B/classification.csv.gz\" -O \"$B/coordinates.csv.gz\" \\\n     -O \"$B/connections.csv.gz\" -O \"$B/consolidated_cell_types.csv.gz\"\ncd - && python3 etl.py /tmp/flywire\n./DesktopFly --simtest        # circuit invariants: GF silent at rest, 4 ms loom latency, ...\n./DesktopFly --behaviortest   # 17 end-to-end checks: stimulate neurons -> body reacts\n./DesktopFly --snapshot f.png  # offscreen fly render\n./DesktopFly --brainshot b.png # offscreen brain render\n```\n\nHonesty section: the connectome gives wiring, not physiology. The LIF dynamics, neurotransmitter signs (ACh+, GABA−, Glu−), the gap-junction boost on LC→GF and wind→GF (documented electrical coupling), synaptic delays, and the sensory transduction (cursor → looming value) are standard modeling choices layered on the real graph. Everything downstream of the sensory neurons — who connects to whom, and how strongly — is FlyWire data.\n\nCode is MIT. The files in `data/`\n\nare derived from FlyWire (FAFB v783) and\nare **CC BY-NC 4.0** — see [data/DATA_LICENSE.md](/DenisSergeevitch/desktop-fly/blob/master/data/DATA_LICENSE.md).\nIf you use this, cite:\n\n- Dorkenwald, S. et al.\n*Neuronal wiring diagram of an adult brain.*Nature 634, 124–138 (2024).[https://doi.org/10.1038/s41586-024-07558-y](https://doi.org/10.1038/s41586-024-07558-y) - Schlegel, P. et al.\n*Whole-brain annotation and multi-connectome cell typing of Drosophila.*Nature 634, 139–152 (2024).[https://doi.org/10.1038/s41586-024-07686-5](https://doi.org/10.1038/s41586-024-07686-5)", "url": "https://wpnews.pro/news/a-3d-fruit-fly-on-macos-desktop-powered-by-the-real-flywire-connectome", "canonical_source": "https://github.com/DenisSergeevitch/desktop-fly", "published_at": "2026-08-18 21:50:33+00:00", "updated_at": "2026-08-18 22:11:14.270286+00:00", "lang": "en", "topics": ["artificial-intelligence", "neural-networks", "ai-research", "ai-tools"], "entities": ["FlyWire", "DesktopFly", "DenisSergeevitch", "GitHub", "macOS"], "alternates": {"html": "https://wpnews.pro/news/a-3d-fruit-fly-on-macos-desktop-powered-by-the-real-flywire-connectome", "markdown": "https://wpnews.pro/news/a-3d-fruit-fly-on-macos-desktop-powered-by-the-real-flywire-connectome.md", "text": "https://wpnews.pro/news/a-3d-fruit-fly-on-macos-desktop-powered-by-the-real-flywire-connectome.txt", "jsonld": "https://wpnews.pro/news/a-3d-fruit-fly-on-macos-desktop-powered-by-the-real-flywire-connectome.jsonld"}}