EvoSphere · Build dossier
A pass over the project’s own repository: what is implemented, what is partial, what stayed on paper.
A browser application without a bundler: ES modules, Canvas 2D across three layers and Howler 2.2.4 for audio. The output is a static index.html and index.ru.html; no GPU is required.
3 implemented · 2 not implemented · 1 partial
What the code says
Rendering is three stacked Canvas 2D layers (background, world, ui), not WebGL
Source
js/renderer/core/CanvasManager.jsStart: 16 agents (4 families × 4), hard ceiling 100
Source
js/constants.jsGenome: ~45 scalar genes plus a tendency vector; mutation rate 0.055
Source
js/core/genome.js38 action types, 22 brain evaluators, 10 emotions, 10 global events, 3 diseases
Source
js/constants.js, js/entities/agentBrain.js43 audio files and a single runtime dependency, Howler 2.2.4
Source
assets/sounds/, package.jsonBuild: 42 files, 3.03 MB including a 1.56 MB sourcemap
Source
dist/
Module state
implemented
Genetics and inheritance
A random genome, one parental value per gene and mutation; there is no crossover or gene duplication.
Source
js/core/genome.jsimplemented
Evaluator-based agent brain
Normalised needs (health, energy, food, oxygen) and a sorted action list; there is no neural network in the code.
Source
js/entities/agentBrain.jsimplemented
Ecology: families, leaders, lairs, corpses, scavenging
Leaders issue attack/defend/gather/explore commands; global events shift resources and health.
Source
js/sim_modules/not implemented
Neural networks, state export, analytics, Electron
README items with no matching code; only a results summary is persisted, in localStorage.
Source
README.mdnot implemented
Automated tests at all
The test script prints an error and exits non-zero; the CI test step is commented out.
Source
package.json, .github/workflows/ci.ymlpartial
Bilingual entry: EN and RU
Two entry pages are built; the project has no Arabic localisation.
Source
index.html, index.ru.html
How this was checked
The runtime makes no network calls
No fetch, XMLHttpRequest or api_key occurrences were found under js/.
CI builds and publishes but does not test
The workflow contains build and a GitHub Pages deploy; the test step remains a comment.
The population ceiling is a constant, not a setting
MAX_POPULATION = 100 is fixed in js/constants.js.
Source
js/constants.js
Limits of these claims
- The README guidance of "100–200 agents smoothly, 500+ needing a GPU" contradicts the hard ceiling of 100 agents and is unmeasured.
- The "tested browsers" table is not backed by a single test run.
- The scientific framing (epigenetic landscapes, game theory) is descriptive analogy: the code implements genes and selection, not those models.
- The README JS API examples (a Simulation with environment parameters, extinction events) have no implementation.
- The project is distributed under CC BY-NC 4.0: commercial-use rights stay with the copyright holder, that is, its author.
- A stub pause path still sits in js/main.js next to the working handler.
Live build
Live buildevosphere.moonsugar.space ↗
The shipped interface exposes no simulation parameter controls: start, pause, restart and result views are what is present. The population has a hard ceiling of 100 agents. Rendering is Canvas 2D, so no GPU is required.
The page itself does not confirm availability: the host is checked when the build is published.