Neural network OCR in JavaScript
github.com
github.com
However, I do believe that converting the network input to character codes (output layer size 4 bits for digits, 8 bits for letters) instead of using a softmax layer (would need 10 bits for digits, 26 bits for letters) is a novel approach that really improves performance.