WebScan

An experimental project to bring document/image scanning to the web (USB scanners).

0. Disclaimer

This is an experimental application. Behind the scenes it uses the well established SANE project (wiki) to do the actual scanning. For MANY scanner models this project does NOT use official manufacturer software to control the scanner. If you see your device misbehaving, unplug it.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

1. Select Device

2. Change Options

3. Scan

What scanner models are supported?

There is no definitive list of supported devices at the moment. Behind the scenes, WebScan uses SANE to do the actual scanning so it will always be limited to the devices supported by SANE.

List of devices supported by SANE – Of the devices on this list it's currently unknown which ones work with WebScan. An exhaustive list has not been compiled yet.

List of devices supported by SANE (external) – Of the devices on this list NONE are supported by WebScan at the moment.

WebScan only works with USB scanners. The best way to test support is just to try it. Connect the scanner. Click "Authorize USB Scanner". If after selecting the scanner in the browser dialog you still see the text "NO SUPPORTED DEVICES FOUND", then the device is not currently supported.

Use a modern browser!

A modern browser that supports WebUSB is required. Try using the latest version of Chrome/Edge.

Special Considerations on Windows!

On Windows, you might need to use the free tool Zadig to replace the pre-installed device driver. It goes something like this: 1. Open Zadig 2. Select "Options" "List All Devices" 3. Select your scanner 4. Replace the driver (probably usbscan) with WinUSB 5. Reload this page and try selecting the device. To revert, uninstall the device from Device Manager and reconnect.

Source Code on GitHub!

The secret sauce behind WebScan is sane-wasm a WebAssembly port of the SANE library that I'm publishing on GitHub. WebScan is just a simple React application on top of that, also on GitHub.

Report Issues

You can report issues on the issues page for sane-wasm as any problems will most likely be related to that. Note that any issues that are found to be specific to the SANE library will probably not be fixed, and will need to be redirected to that project.

You can also email me at contact@goncalomb.com.