# OpenDocScan > A document scanner that runs in a browser tab. Photograph a page and get back > a straightened, lighting-corrected, searchable multi-page PDF. Every step — > finding the page, correcting the perspective, cleaning the image, reading the > text — happens on the device you are holding. Nothing is uploaded, because > there is no server to upload to. https://opendocscan.com ## How it works - **Finds the page.** The sheet is outlined live in the viewfinder as you move the camera. If the outline picks the wrong edge, drag any of the four corners onto the right ones. - **Straightens the perspective.** A page photographed at an angle comes back rectangular, as though it had been laid on a flatbed rather than held in one hand. - **Cleans the lighting.** Shadows, a warm desk lamp and the grey of a phone photo are evened out, so the paper reads white and the ink reads black. - **Reads the text.** OCR runs over every page, so the PDF is one you can search inside and select text from rather than a picture of a document. - **Builds the PDF.** Multi-page, in the order you arranged. - The scanning core is written in Rust and compiled to WebAssembly — 182 KB over the wire, gzipped — and runs in a background worker inside the tab. ## What is different about it - **The privacy claim is one you can check rather than one you are asked to believe.** Open the developer tools, switch to the Network panel, and scan a page: after the app has loaded, nothing else is requested. In a native app the same promise is not auditable from outside. - **The core has no way to reach the network.** The Rust module that does the scanning has no HTTP client and no networking dependency compiled into it. - **The text recognition is served from this origin**, not fetched from a third-party CDN, and it works with no connection at all once the page has loaded. - **Documents live in this browser, on this device.** Not on a server — which also means they do not appear on your other devices, and clearing your browsing data clears them. - **Free, with no page limit, no watermark, no trial and no account.** There is no paid tier, because everything runs on your own device and costs nothing to run. An optional account exists only to carry credits across our other apps; scans are never part of it. ## Limits worth knowing - **Text recognition reads English today.** The recognised text is written into the PDF as an invisible layer behind the page image. A page the English model cannot read (Chinese, Japanese or Korean, for instance) gets no searchable layer and no word count, and the scanner says so instead of filling the layer with guesses. The page image is unaffected either way. - **The browser version is the complete one.** Native iPhone, iPad and Android builds are in progress over the same Rust scanning core, but they are early. - Because documents are stored in the browser, they do not sync between devices. ## Pages - [The scanner](https://opendocscan.com/): the app itself, and what it does. Adding it to a home screen opens it like an app and it works offline. - [Scan to PDF](https://opendocscan.com/scan-to-pdf): how to scan a paper document to a searchable, multi-page PDF in the browser, step by step. - [Searchable PDF](https://opendocscan.com/searchable-pdf): how to make a searchable PDF from paper with on-device OCR, what the text recognition reads (English) and what it cannot do (it makes new PDFs from paper or photos; it does not open an existing PDF). - [CamScanner alternative](https://opendocscan.com/camscanner-alternative): OpenDocScan compared with CamScanner (price, ads and watermark, upload, text recognition, platforms), each fact sourced, and when CamScanner is the better choice. - [Blog](https://opendocscan.com/blog/): articles, including [how to scan multiple pages into one PDF](https://opendocscan.com/blog/scan-multiple-pages-into-one-pdf.html) and [how to turn a photo into a scanned document](https://opendocscan.com/blog/photo-to-scanned-document.html). - [Privacy](https://opendocscan.com/privacy): what is collected, what never is, and how to verify it in the Network panel. ## Source - https://gitlab.com/open-docscan/OpenDocScan — MIT or Apache-2.0.