SuperSpike is one of our initial attempts to bring supervised learning to multi-layer and recurrent networks of deterministic spiking neurons.
Here you'll find the paper https://www.mitpressjournals.org/doi/abs/10.1162/neco_a_01086
And code https://github.com/fzenke/pub2018superspike
You may also find our Tutorials on surrogate gradient learning in spiking neural networks useful https://github.com/fzenke/spytorch
Below you see the input, hidden-layer and output-layer activity a network while being trained with SuperSpike.