$ python scanner.py --in-browserDocument Scanner
Turn a phone photo into a clean scan: the page is found and flattened automatically, shadows are removed, and you can export a PDF. Python and OpenCV compiled to WebAssembly, running entirely in your browser.
🔒 Your photos are processed on your device and never uploaded.
How it works
- Pick a photo of the page or take one with your phone camera. It doesn't need to be straight or perfectly framed.
- The scanner finds the page edges on its own; if it gets a corner wrong, drag the corners to fix it.
- Choose a filter (color, grayscale or black and white) and save the scan as an image or a PDF.
Frequently asked questions
Are my photos uploaded anywhere?
No. All processing runs with Python and OpenCV inside your own browser, and the photo never leaves your device.
Why does it take a few seconds the first time?
The first time, Python itself and the image-processing libraries are loaded into your browser. After that they come from the browser cache and it starts faster.
Can it scan a spiral notebook or a page that isn't fully in the photo?
Usually, yes. When the full page outline isn't in the photo, the scanner finds the page by the bright color of the paper instead. If it's still off, move the corners by hand.