Skip to content
Raul Montoya Cardenas edited this page Jul 29, 2026 · 3 revisions

synaptic-mesh

Wiki hero

Generated with Grok Build: Grok 4.5 · xAI Imagine (/imagine)

SNN wiring, topology generation, and temporal delay infrastructure.

Edition: 2024 | License: MIT OR Apache-2.0 | Deps: serde only (runtime)

Manages connectivity graphs (CSR), axonal delays (ring-buffer delivery), sparse weight maps, and a generic multi-channel ChannelRouter. Does not depend on the separate neuromod crate — canonical neuron models live there; mesh owns topology + delays + router-internal NIF primitive.

Core capabilities

Area Capability
Topology Erdős–Rényi, Watts–Strogatz, Barabási–Albert, layered
Delays Per-synapse DelayTicks + SpikeDelayBuffer
Mesh SynapticMesh::propagate / propagate_graded
Sparse maps CSR SparseSynapticMap + builder
Router ChannelRouter / RouterConfig / RoutingDecision
Wiring Dale’s law polarity, distance-based rules

Public surface (crate root)

Symbol Role
SynapticMesh Topology + delay orchestrator
SynapticGraph CSR adjacency with weight/delay/polarity
SpikeDelayBuffer Ring-buffer delay queue
MeshError / Result Error types
ChannelRouter, RouterConfig, RoutingDecision Multi-channel routing
NeuromodNeuron, NeuromodState Router-internal NIF (not general models)
SparseSynapticMap, SparseSynapticMapBuilder Sparse weights
RoutingPolicy, NeuronStateSnapshot Adaptation-aware scoring
Types NeuronId, DelayTicks, Polarity, SynapseDescriptor, …

Deprecated aliases still exported: AhlRouter (= ChannelRouter), AHL_NUM_CHANNELS, TelemetrySnapshot (= NeuronStateSnapshot).

Start Here

Page Description
Overview Wiki map + DeepWiki outline
Getting Started Install and first mesh
Architecture Data flow
Crate Boundary vs neuromod
Topology Generators + graph
Delays SpikeDelayBuffer
SynapticMesh propagate API
Channel Router Multi-channel routing
Sparse Maps CSR maps + policy
Error Handling MeshError
Testing Suite
CI and Quality Workflows
Ecosystem Siblings
Glossary Terms

Quick start

synaptic-mesh = "0.2"
# or git dependency on Limen-Neural/synaptic-mesh
use synaptic_mesh::topology::generators::generate_small_world;
use synaptic_mesh::mesh::SynapticMesh;

let graph = generate_small_world(1024, 6, 0.1, 10, 0.2).unwrap();
let mut mesh = SynapticMesh::new(graph);

let mut spikes = vec![false; 1024];
spikes[0] = true;
let currents = mesh.propagate(&spikes).unwrap();

License

Dual-licensed under MIT or Apache-2.0 at your option.


Last updated: July 29, 2026 Updated by: Grok Build: Grok 4.5 Package tip reference: 1486191 (main) Devin DeepWiki: commit 14861916 · synaptic-mesh

Clone this wiki locally