I have for some time been working on a new version of Neuronify, written in Rust. The goal is to make Neuronify more suited for teaching purposes. For instance by making it easier to embed multiple simulations into a single web page. This will make Neuronify better suited to integrate into blog posts and online books.

Neuronify was initially made as an educational simulator for neuroscience courses. The idea was to improve how we visualize neuronal networks. Books contain static figures of neural networks even when they describe dynamic behavior. This makes it pretty hard to understand how a network actually works.

By looking at an animation, it can be easier to grasp what is actually happening. And when the animation comes from a simulation, it is possible to interact with the system and see how the behavior changes.

Below is a simple circuit with two feedback loops. The idea is that only one of them will run at any given time. If you stimulate the other circuit, the behavior flips and the other circuit becomes active.

Click the “Edit” button and then “Stimulate” to try it out:

However, the circuit only works as expected if the timing is just right. If the inhibitory signal from one loop arrives just a bit too late, it will not be able to stop the other loop.

These are the kinds of details that are hard to communicate in books. Even a simple circuit can have complex behavior that cannot be understood from just glancing at its layout.

That is where Neuronify started and will continue. Now that I finally have something up and running again, I plan to find some time to extend Neuronify with more features and examples.