Skip to content

VikTs/smart_document_scanner

Repository files navigation

Smart documents scanner

Flutter Dart

Mobile application for scanning and storing the documents.

Supported formats:

  • images (jpg, jpeg, png)

Features

  • Scan a document or uploap it from the device
  • View a list of the scanned documents
  • Recognize a text from the image (only latin letters and numbers):
    • Copy the text by tapping the highlighted sections
  • Share the image file
  • Chat with AI about the document content
  • Minimal support for PDF: upload/delete/view

Technologies

  • Flutter for UI
  • State Management: Bloc
  • Database: Drift (local storage)
  • Localization: easy_localization (translations in assets/translations)
  • Text recognision: google_mlkit_text_recognition
  • LLM: Groq/OpenAI

Getting started

Prerequisites

Installation and launching

  1. Clone the repo
git clone https://github.com/VikTs/smart_document_scanner
cd smart_document_scanner
  1. Install dependencies
flutter pub get
dart run build_runner build
  1. Connect device and run the application
flutter run

Testing data

The application was tested with the images from assets/test folder. They can be uploaded to the device's gallery and used for testing.

Running tests

Tests are stored inside /test folder. To run them, launch the command:

flutter test

Building Android app

APK

flutter build apk --release

AAB (Google Play)

  1. Go to android/app/build.gradle.kts:
  • Uncomment signingConfigs
  • Replace signingConfigs.getByName("debug") with signingConfigs.getByName("release")
  1. Check if files exist:
  • android/key.properties
  • android/upload-keystore.jks
  1. Run the command:
flutter build appbundle --release

Production version

Google Play

https://play.google.com/store/apps/details?id=com.viktsukan.docscanner

Privacy policy

https://sites.google.com/view/docscanner-privacy-policy-info

About

Mobile application for scanning and recognizing documents

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages