Research report · 27–28 September 2026 · bootstrap run
First catalogue check: fruit fly brain simulation projects, viral claims and a tested beginner project
How we built the first version of Digital Fly Lab: 58 projects graded from their code, twelve viral claims checked, seven connectome datasets compared, and a beginner project run from an empty folder. This report keeps the numbers, the uncertainty and what we did not test.
Short answer
What people built. Most projects rest on a few foundations: two connectomes (FlyWire, the female brain, and MaleCNS, the male brain and nerve cord), one model (the Shiu et al. 2024 whole-brain leaky integrate-and-fire model) and two body simulators (FlyGym and flybody). On top of them sit games, desktop pets, art, trading bots, browser toys and a small but useful set of controlled studies. We catalogued 58 checked entries.
What you can try today. 28 entries have a no-install link. All answered our HTTP check on 28 September 2026, but we played none of them: we had no browser.
Is it real? Most viral demos run a real connectome, but a person chose the input and output neurons, and several get their movement from scripts or trained parts. No viral game demo has a shuffled-wiring control.
How to build your own. We ran the Shiu model from an empty folder on Linux with 2 CPUs, no GPU and no compiler. Sugar neurons at 150 Hz drove the proboscis motor neuron MN9 to 85.2 ± 3.2 Hz; shuffled wiring gave 0 Hz in 6 of 6 trials. The run took 28 minutes and all 6 tests passed. Treat the FlyWire data as non-commercial.
Reliability labels
- direct
- A raw page, file, API response or command output that we read ourselves.
- fetch-summary
- Read through a summarising fetch tool.
- search-summary
- Seen only in a search result: a lead, not evidence.
- tested / untested
- Whether a Build your own step was actually run in our test environment.
What we did
Two workstreams ran in parallel, each with a budget of about 90 minutes.
A: the catalogue
- Candidates: 59, from our planning notes, the flybrain.info and Fly Brain Hub lists (used only as leads; no text copied) and a GitHub search for repositories created 20–27 September 2026.
- Metadata: one GitHub API call per repository, a shallow clone for the true last commit, file tree and licence file, and the releases feed.
- Grades from code: four grading passes opened the files and cite file and line. Every grade was reviewed; one was changed (DOOMFLY, from A to B).
- Links: 148 checks on 28 September 2026.
- Official facts: dataset figures and licences from the official pages; the 91% and 95% sentences from the Shiu et al. full text.
B: the Build your own path
- Started from a new empty folder on 28 September 2026 and recorded every command and output.
- Environment: Debian 12, x86_64, AMD EPYC with 2 CPUs, no GPU, no C/C++ compiler, no
ensurepip, a read-only home folder. - Memory: 3 GiB, shared with workstream A; the temporary disks were RAM-backed and counted against it.
Limits of the method. We had no browser, so no demo was played; every browser entry says "page responds, not played by us". Control and benchmark numbers for catalogue projects are the authors' own: we re-ran none of those projects and recomputed only the larva statistic. Workstream B's numbers are our own runs. Star counts are from 27 September; links, grades and last_verified are from 28 September 2026.
Catalogue findings
Every one of the 58 entries has a link check with an HTTP code, last_verified 28 Sep 2026, a licence status, its true last commit and release (or "n/a" for entries without a repository), a grade with its basis, and at least one primary source. The main link of 56 entries answered directly and 2 through a redirect; none was dead. Journal DOIs are often "blocked" by bot checks, which is not the same as dead.
| Kind | A | B | C | D | U | n/a | Total |
|---|---|---|---|---|---|---|---|
| Browser demos | 2 | 3 | 5 | 1 | 1 | 0 | 12 |
| Games | 0 | 6 | 1 | 0 | 2 | 0 | 9 |
| Desktop apps | 0 | 1 | 1 | 0 | 0 | 0 | 2 |
| Art | 0 | 1 | 1 | 0 | 0 | 0 | 2 |
| Research and control studies | 7 | 1 | 1 | 0 | 2 | 1 | 12 |
| Brain models and engines | 3 | 0 | 1 | 0 | 0 | 2 | 6 |
| Fly bodies | 0 | 0 | 0 | 0 | 0 | 2 | 2 |
| Datasets | 0 | 0 | 0 | 0 | 0 | 7 | 7 |
| Data tools | 0 | 0 | 0 | 0 | 0 | 6 | 6 |
| All entries | 12 | 12 | 10 | 1 | 5 | 18 | 58 |
- Coverage: all 7 datasets; the foundations (Shiu model, Eon fly-brain, flyvis, FlyGym, flybody, and two fast engines, fasterfly and drosophila-brain-mlx); all 12 of the 12 most-searched demos; 12 browser demos; 13 control or negative studies with numbers; 5 repositories created 20–27 September 2026.
- Grade basis: every A and B grade cites 3 to 8 code or result files; none rests on README text or search summaries.
- Datasets used: MaleCNS 20, FlyWire 13, several 12, larval L1 3, BANC 2, hemibrain 2, FANC 1, MANC 1, other or none 4.
- Code licences (from the licence files, counted from the records): 39 repositories have a licence file (26 MIT, 4 Apache-2.0, 6 GPL family, 1 BSD-3-Clause, 2 custom), 10 have none, and 9 entries have no code repository.
- Currency: other directories show creation dates, but true activity differs. The Shiu repository's last commit is 14 Sep 2024; flybody's default branch was last committed on 30 Jul 2025 but pushed on 7 Feb 2026; FlyGym 2.1.0 came out on 24 Jun 2026 after a breaking rewrite.
- Left out: one clone (flybook, a copy of Stonkfly), one unattributed re-host (fruitfly.live), 9 crypto-token projects and the directories themselves. About 50 more candidates were deferred.
Full table: Projects catalogue.
Datasets and neuron counts
| Dataset | Scope | Neurons (release) | Data licence |
|---|---|---|---|
| FlyWire FAFB | Female brain with optic lobes; no nerve cord | 139,255 (v783, Codex); 127,400 (v630, the Shiu model; our row count agrees) | CC BY-NC 4.0: "FlyWire's public release data is made available under license CC BY-NC 4.0" (direct) |
| MaleCNS | Male brain, optic lobes and nerve cord | 166,700 (v1.0, Codex); 166,691 (v0.9 preprint) | "licensed under CC-BY", linking to CC BY 4.0 (direct) |
| BANC | Female brain and nerve cord | 158,262 (v888, Codex); 155,916 (paper, v626) | CC BY 4.0 for the Dataverse deposit (direct) |
| MANC | Male nerve cord | 23,665 (v1.2.1) | "CC-BY" (direct) |
| Hemibrain | Part of one female central brain | About 25,000 (v1.2.1) | "CC-BY" (direct) |
| FANC | Female nerve cord | About 14,600 cell bodies (search-summary) | No open licence found; newest reconstruction restricted |
| Larval L1 | First-instar larval brain | 3,016 | Article CC BY 4.0; no separate data licence |
Where the quoted counts come from: "125k" is the Shiu abstract's "more than 125,000"; 127,400 is FlyWire v630; 138,639 is the number of rows in the Shiu repository's v783 file (our count); 139,255 is the v783 release; 165,122 is the MaleCNS v1.0 neurons with status "Traced" (counted by the bioreservoir project, not re-counted by us); 166,691 is the MaleCNS preprint; 166,700 is MaleCNS v1.0 in Codex. Codex counts a "connection" differently per dataset: 5 or more synapses for FlyWire and MaleCNS, 3 or more for BANC, 1 or more for MANC.
What the Shiu model leaves out, in its authors' words: it "does not account for gap junctions, non-spiking neurons, internal state or long-range neuropeptides, and assumes that the basal firing of each neuron is zero". Neuromodulation is also not modelled. Weights are synapse count × one hand-tuned parameter, and signs come from predicted neurotransmitters. Details: How it works.
Is it real? Viral claims and controls
| Claim | Verdict | Grade |
|---|---|---|
| Eon "first embodied fly upload" | By Eon's own page, a few hand-picked neurons drive pre-trained, imitation-learned controllers, and the vision is "somewhat decorative". Body code not released | U (C if the description is accurate) |
| DOOMFLY | Full MaleCNS v1.0 LIF model; four read-out neurons chosen by hand; learning failed (3.66 s vs 5.83 s survival, two episodes each); no wiring control | B |
| NeuroCraft Fly (Minecraft) | Repository has documents and videos only; the author says read-outs trigger scripted body programmes | U |
| Fly Brain Minecraft mod | MaleCNS v1.0, connections with 5 or more synapses; a reflex layer is on by default | B |
| FlyCraft ("no behaviour is scripted") | Python decides navigation and injects it into the same neurons it reads out | C |
| Beat Saber fly | No code; the author reportedly fitted motor output to a replay (search-summary) | U |
| Bad Apple on a fly brain | The image comes mostly from forced stimulation; the body uses pre-programmed FlyGym steps | C |
| Fly64 (Mario 64) | MaleCNS v1.0 LIF with hand-mapped stick and buttons; no control; no licence file | B |
| Stonkfly | Paper trading; the README says "Profitable learning has not been demonstrated" | B |
| DesktopFly | A 668-neuron FlyWire circuit (plus a 1,045-neuron MaleCNS leg circuit); the behaviour state machine is ordinary code; the 23,210 "neurons shown" are display points | B (borderline C) |
| FlyDrones | The browser demo runs a synthetic 850-neuron network, not connectome data | C |
| Flyhard (car driving) | All about 25.7 million gains trained; steering 100/100 vs 0/100 untrained; parking 0/50 | B |
- "91%" refers to the brain-only Shiu model: "Across 164 predictions we were able to test empirically, 91% were consistent with our empirical results"; 84% without the split-GAL4 screen. "95%" is not an accuracy: "Decreasing the strength of inhibition results in predictions consistent with 95% of those of the default model; accuracy drops from 91% to 88%." Neither number describes an embodied fly or a game (direct).
- Uploaded? No. What exists is a measured wiring diagram plus simplified models.
- Conscious, or can it suffer? We found no study that measured or claimed this; the models omit internal state and neuromodulation, so any such claim is unsupported.
- Mouse or human next? Not soon. The largest mammal connectome, MICrONS, covers about 1 mm³ of mouse visual cortex, with more than 200,000 cells and about 523 million synapses (search-summary). See the State of Brain Emulation Report 2025.
Controls (authors' numbers, except the larva statistic, which we recomputed, and our own run):
- Reflexes: wiring mattersShiu paper: shuffled weights activated MN9 in 1 of 100 runs vs 100% with real wiring. drosophila-brain-mlx: 67.30 Hz real vs 0 Hz shuffled. FLY-lab: shuffled brains lose 69–100 points on turning. Our own run: 85.2 Hz real vs 0 Hz shuffled.
- General ML: no benefit so farLarva reservoir: +0.09 points over shuffles, p = 0.51. MaleCNS reservoir: memory 2.2 real vs 15.5 rewired. FLM: the adapter without the graph matches the fly adapter. Hemibrain hash: 0.499 real vs 0.621 random.
Full verdicts: Is it real?
Build your own: what we ran
Tested 2026-09-28 on Linux x86_64, Debian 12, Python 3.11.2, 2 CPUs, no GPU, no compiler.
- Environment:
python3 -m venv --without-pip .venvplusget-pip.py(the system Python had noensurepip). - Packages:
pip install -r requirements.txtin 32 s (brian2 2.9.0, numpy 2.3.5, pandas 2.3.3, pyarrow 25.0.1, joblib 1.6.0, pytest 9.1.1); the 21-package lock file was identical on both days; the environment is 463 MB. - Model and data: a sparse clone of philshiu/Drosophila_brain_model at
91bdd1e7(14 Sep 2024) with FlyWire v783:Completeness_783.csv(3,327,347 bytes) andConnectivity_783.parquet(100,804,642 bytes), checksums recorded. - Tests: 6 passed in 52.3 s (checksums, IDs, silence without stimulus, sugar → MN9, shuffled control).
- Experiments: 20 trials of 1 s in 1,685 s (28 min) with Brian2's numpy target: 58–65 s per trial with free CPUs, up to 138 s while shared. Peak memory about 0.58 GB per trial.
| Condition | MN9 (Hz) | Action |
|---|---|---|
| Sugar neurons at 150 Hz (upstream default), 5 trials | 85.2 ± 3.2 | extend |
| No stimulus | 0 (no spike anywhere in the brain) | stay |
| Customization 1: sugar at 50 Hz, 5 trials | 16.6 ± 7.2 (2 of 5 trials above 20 Hz) | stay |
Customization 2: silence 720575940623211725 (CB0553, chosen by our own rule, not the paper), 5 trials | 56.2 ± 2.5 (−34%) | extend |
| Shuffled wiring, 2 shuffles × 3 trials | 0 in 6 of 6 (sugar neurons still at about 147 Hz; 120–126 active neurons vs 409) | stay |
| Reference: sugar at 100 Hz, 5 trials | 65.6 ± 4.2 | extend |
The 100 Hz reference is 1.4–1.7 Hz below two published v630 values, 67.30 Hz (drosophila-brain-mlx) and 67.03 Hz (the upstream notebook). We relay those and did not re-run them. We count this as agreement, not exact replication.
What we found along the way
- The v783 switch needs more than two config lines. Upstream's v630 sugar list raises
KeyError: 720575940620900446on v783 (reproduced by us); the fix is720575940639259967from issue #7. MN9's ID is unchanged. - Memory, not CPU, is the real constraint. The upstream loader reads about 1 GB per trial and per worker and was killed repeatedly in our shared 3 GiB environment. Our loader streams 3 columns in chunks and runs each trial in a fresh process: peak memory fell from 1.44 GB to about 0.58 GB.
- Silencing cuts outgoing synapses only (issue #10, open).
- The default input rate is 150 Hz in
model.py, while the notebook text says 200 Hz.
Tested
- The whole beginner path and the 100 Hz reference
- Reproducing the upstream KeyError
- Local preview (fetched over HTTP, not viewed in a browser) and a local git commit of the publishable folder
- FlyGym 2.1.0 install and a physics-only CPU smoke test in a separate Python 3.12 environment: install 9 s; 2,000 steps (0.2 s simulated) in 0.41 s
Untested
- macOS, Windows/WSL, conda, Colab
- Brian2 with a C++ compiler or standalone mode; Python 3.12+ with Brian2 2.10
- Upstream
run_exp()to completion and the upstream notebooks - GitHub push and Pages
- Coupling a brain to a FlyGym body
- Any MaleCNS download or simulation (the weights file is 1,051.2 MB)
- drosophila-brain-mlx, flypoke and the Eon GPU engines
Licence. Upstream code is MIT (© 2023 Philip Shiu and Nico Spiller); our project files are MIT. For the data there is an unresolved conflict: flywire.ai/guidelines says CC BY-NC 4.0 (direct), while the Zenodo record of the v783 connectivity lists CC BY 4.0 (fetch-summary). We follow the stricter reading: FlyWire data and derived results are non-commercial, with attribution. MaleCNS (CC BY) is the candidate for commercial demos, but that path is untested.
Full guide: Build your own.
Source conflicts
Resolved
- NeuroCraft code: the repository has an MIT licence but only documents, citation files and two videos; code "coming soon" (direct).
- DesktopFly licence: MIT plus appended lines putting
data/under CC BY-NC 4.0; that extra text is why GitHub reports NOASSERTION (direct). - DesktopFly dataset: both a 668-neuron FlyWire v783 circuit and a 1,045-neuron MaleCNS v1.0 leg circuit (added in v1.1.0); the 23,210 "neurons shown" are display points (direct).
- Fly64 source: the repository and the viral post come from the same author; no licence file (direct).
- flybook: a byte-identical copy of Stonkfly, excluded (direct).
- FlyDrones: the browser demo runs a synthetic 850-neuron network (direct).
- Neuron counts and 91% / 95%: see above (direct).
- Eon body code: not released (direct).
- Bad Apple source: the repository and the viral post belong to the same person (high confidence), but the repository was created a week after the clip, so the public code may differ.
- Shiu v630 vs v783: the repository defaults to v630; v783 needs two path changes and one ID replacement; tested.
Unresolved
- FlyWire data licence: CC BY-NC 4.0 in the official guidelines vs CC BY 4.0 on the Zenodo v783 record. We follow the stricter reading; someone should ask FlyWire.
- Beat Saber: no code anywhere; the author's "replay" explanation seen only in search summaries.
- 616 neurons: the Shiu v783 file has 138,639 neurons, the v783 release 139,255; the cause is unknown.
- BANC count: the README's "approximately 188,000" has no stated scope (vs 158,262 in Codex and 155,916 in the paper).
- FANC: no data licence found; counts only from search summaries.
- Left or right: the upstream notebook calls the 21 sugar neurons "right", FlyWire's annotations say "left". This does not affect the simulation.
Uncertainties
- Browser demos: none was played, so "works" is never claimed.
- Borderline grade A entries: Fly Worker (no committed script produces its correlation numbers), fly-brain by Lulzx (its benchmark was also used to fit parameters), The Fly's Hash Function (a one-step model) and Fly OCR (rewiring control only on a pilot). DOOMFLY was lowered from A to B. Wired Different is not graded (no simulation).
- Missing large files: grading used clones without files over 512 KB, so some bundled data files were not opened (noted per entry).
- Small samples in our run: 5 trials per condition and 3 per shuffle, against the paper's 30. The silenced neuron was chosen by our own rule; its effect is a model output, not a replication. Repeatability was shown only on our machine.
- Relayed reference values: 67.30 and 67.03 Hz and the paper's 1-in-100 shuffle result were not re-checked in our build run.
- Search-summary evidence: the MICrONS figures, the Beat Saber author's replies and the FANC counts.
Next runs
- Catalogue: the deferred long tail (Virtual Fly Brain, Fly.exe, fly-api, fly.ai, Fly Self Driving, ten more browser demos, 19 new repositories), dead-link re-checks, project pages for the foundations and top demos, and real-browser checks of demos.
- Build your own: brain–body coupling with FlyGym 2.x, the same project on MaleCNS v1.0 (CC BY), a compiler speed-up, macOS and WSL, GitHub Pages, and re-tests against upstream changes.
- Later: a synthesis of the "does fly wiring help machine learning?" controls.
- Open questions: the FlyWire licence, the 616-neuron gap, and the scope of BANC's "188,000".
Key sources
- FlyWire: guidelines, terms, Codex FAQ (direct)
- MaleCNS: portal, Google Research blog, preprint on PMC (direct)
- Virtual Fly Brain neuron counts (direct)
- MANC, hemibrain, BANC project, FANC, Winding et al. 2023 (direct)
- Shiu et al. 2024: doi, full text (direct)
- Drosophila_brain_model at 91bdd1e7; issues #7 and #10 (direct)
- Eon Systems, Eon fly-brain (direct)
- Zenodo record 10676866 (FlyWire v783 connectivity, fetch-summary)
- Mineault on viral fly simulations (fetch-summary); State of Brain Emulation Report 2025 (direct)
- Every project repository is linked from its row in the catalogue, with the commit and date we read. The machine-readable records are in projects.json.