timqian/ssnn — explained in plain English
Analysis updated 2026-08-04 · repo last pushed 2016-06-23
Learn how spiking neural networks work by reading runnable JavaScript code instead of academic papers.
Experiment with STDP learning rules and see how neurons adjust connections based on spike timing.
Build a basic handwritten digit recognizer using a brain-inspired spiking network approach.
Explore neuromorphic computing concepts as a starting point for further study or projects.
| timqian/ssnn | 3imed-jaberi/cryptography-si-isamm | 3imed-jaberi/koa-isomorphic-router | |
|---|---|---|---|
| Stars | 2 | 2 | 2 |
| Language | JavaScript | JavaScript | JavaScript |
| Last pushed | 2016-06-23 | 2021-09-25 | 2021-02-06 |
| Maintenance | Dormant | Dormant | Dormant |
| Setup difficulty | moderate | easy | easy |
| Complexity | 3/5 | 1/5 | 2/5 |
| Audience | developer | researcher | developer |
Figures from each repo's GitHub metadata at analysis time.
You need to convert MNIST data into JSON format yourself and understand the spiking network workflow before running the training and testing steps.
ssnn is a small experiment in building spiking neural networks, a type of brain-inspired AI that's quite different from the neural networks most developers use today. Instead of treating neurons as number-crunching units that output continuous values, spiking neurons communicate through discrete electrical pulses (spikes), much closer to how biological brains actually work. The project implements two key ideas from neuroscience researcher Izhikevich. First, a mathematical model of how individual neurons decide when to fire. Second, a learning rule called STDP (Spike-Timing-Dependent Plasticity) that adjusts the connection strength between neurons based on the timing of their spikes, if neuron A consistently fires just before neuron B, their connection strengthens. The README describes a twist on the standard STDP formula where weights update directly rather than through a derivative. The author walks through how to use this to recognize handwritten digits. You'd convert a dataset like MNIST into JSON, show images to the network for set time intervals, let STDP learning adjust the connections automatically, then freeze the weights and test how well specific "label" neurons respond to each digit. The workflow is essentially: feed in signals, let the network learn on its own, then lock the learning and see how it performs. Who would use this? Probably someone curious about alternative approaches to neural computation, or a student learning about neuromorphic computing concepts. It's written in JavaScript, which is unusual for this kind of work, most spiking network research happens in Python or specialized frameworks. The project is clearly a learning exercise rather than a production tool, with open questions flagged throughout and only a couple of stars on GitHub. It's an accessible starting point if you want to understand spiking networks by reading code rather than papers.
ssnn is a small JavaScript experiment that builds spiking neural networks, brain-inspired AI where neurons communicate through electrical pulses instead of continuous numbers. It demonstrates learning on handwritten digits using ideas from neuroscience.
Mainly JavaScript. The stack also includes JavaScript, Node.js, JSON.
Dormant — no commits in 2+ years (last push 2016-06-23).
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.