Skip to content
Projects

pynicolas/FairScan has 1,020 GitHub stars and 66 forks. GitHot measured +3 stars in 24 hours, +12 in 7 days, and +42 in 15 days. Last checked 2026-11-09 14:48 UTC. Last push 2026-11-03.

How these counts are measured

An Android app to scan your documents — simple and respectful

What you can do

  • Clear, distraction-free interface
  • Easy flow: scan, review if needed, save or share
  • Automatic document detection using a custom segmentation model
  • Automatic perspective correction

Measured star growth

in 24h
+3
in 7 days
+12
in 15 days
+42
in 1 month
Collecting history

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

README.md

Original

FairScan icon

FairScan

An Android app to scan your documents —
simple and respectful.

License

Get it on: F-Droid · Google Play · GitHub


FairScan is an Android app to scan documents quickly, easily and privately.

It's designed to be simple: users get a clean, shareable PDF in seconds, with no manual adjustments.
And respectful: open source, minimal permissions, no tracking, no ads.


Contributing

Contributions are welcome, but please read the guidelines first: CONTRIBUTING.md


Translations

Translations are managed on Weblate, and everyone is welcome to contribute.

Translation status

Start translating: https://hosted.weblate.org/projects/fairscan/


Screenshots

Scan Preview Save & Share

Features

  • Clear, distraction-free interface
  • Easy flow: scan, review if needed, save or share
  • Automatic document detection using a custom segmentation model
  • Automatic perspective correction
  • Automatic image enhancement
  • Fast PDF generation with no manual adjustments
  • All document processing happens locally on your device, no cloud processing
  • Minimal permissions
  • Open source, GPLv3

What FairScan is not

FairScan is not intended to:

  • provide fine-grained manual control over document processing
  • replicate all features found in other scanning apps
  • optimize for highly specific use cases at the expense of simplicity

Compatibility

FairScan works on any device that:

  • runs Android 8.0+
  • has a camera

Experimental: Scan to PDF via intent

FairScan can be invoked by other Android applications to perform a document scan and return a generated PDF.

This feature is experimental and intended for developers who want to rely on FairScan as a simple, privacy-respecting scanning tool. The intent contract and behavior may change between versions, and backward compatibility is not guaranteed at this stage.

Intent action: org.fairscan.app.action.SCAN_TO_PDF

This is an implicit intent that launches FairScan in a dedicated external mode.

When started via this intent:

  • FairScan opens directly in scan mode
  • the user scans one or more pages
  • FairScan generates a single PDF
  • the resulting PDF is returned to the calling application as a URI with a limited lifetime
  • the calling application should immediately copy the content of the URI as FairScan deletes it later

See an example app: fairscan-intent-sample


Technical details

FairScan uses:


The segmentation model

FairScan uses a custom-trained image segmentation model to detect documents:
https://github.com/pynicolas/fairscan-segmentation-model

It's based on a fully public dataset that is available here:
https://github.com/pynicolas/fairscan-dataset

The build system automatically downloads the model using
download-tflite.gradle.kts.

Related blog posts:


Build

To build an APK:

./gradlew clean check assembleRelease

To build an Android App Bundle:

./gradlew clean check :app:bundleRelease

License

This project is licensed under the GNU GPLv3. See LICENSE for details.

Explore related projects