Skip to content

Commit

Permalink
Add README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Chrisimx committed Jan 6, 2025
1 parent 5873ced commit 7914afc
Showing 1 changed file with 90 additions and 0 deletions.
90 changes: 90 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
## ScanBridge: An easy to use android app for scanning documents

<b>ScanBridge</b> is a Material You app featuring scanning of documents, photos, and more over the
AirScan/eSCL protocol. The eSCL protocol allows for driverless usage of network scanners and is
supported by most modern
scanners.

It is written in Kotlin and uses Jetpack Compose.

<div>
![Discover scanners in your network](fastlane/metadata/android/en-US/images/phoneScreenshots/1.png)
![Scan multiple pages](fastlane/metadata/android/en-US/images/phoneScreenshots/2.png)
![Use your scanner to the maximum of its abilities](fastlane/metadata/android/en-US/images/phoneScreenshots/3.png)
![Scan pages](fastlane/metadata/android/en-US/images/phoneScreenshots/4.png)
![App settings](fastlane/metadata/android/en-US/images/phoneScreenshots/5.png)
![Export as PDF or image](fastlane/metadata/android/en-US/images/phoneScreenshots/6.png)
</div>

## Features

- Discover scanners supporting eSCL in your network
- Scan multiple pages and arrange them however you like
- Use your scanner to the maximum of its capabilities by adjusting settings like input source,
resolution, duplex scan, scanning dimensions, and more
- Save your scans as PDF or images & directly share them with other apps
- Nice-looking Material You design
- Easy-to-use interface

## Downloads

You can download the latest release APK from
the [releases page](https://github.com/Chrisimx/ScanBridge/releases).
Here you can also find a nightly build.
Alternatively you will likely be able to find the app on the F-Droid app store in the near future.

## Dependencies

This project uses [eSCLKt](https://github.com/Chrisimx/eSCLKt), a Kotlin library for using
network-enabled
scanners supporting the eSCL/AirScan protocol.
Also, the [Jetpack Compose](https://developer.android.com/jetpack/compose) library is used for the
UI.
Additionally, the [Telephoto](https://github.com/saket/telephoto) library is used for making the
scanned pages preview
zoomable.
All other dependencies are listed in the build.gradle files.

## Building

Gradle is used as the build system. To build an APK, run the following command:

```./gradlew assembleRelease```

Afterwards, sign it with apksigner, which is provided by the Android SDK:

```apksigner sign --ks path/to/keystore.jks --out path/to/signed.apk path/to/unsigned.apk```

If you just want to build and test ScanBridge run the following command:

```./gradlew build```

## Bugs & feature requests

You can ask questions, report bugs or submit feature requests on the GitHub issue tracker. Please
provide a detailed
description of the problem and if possible, a crash log, android logcats or stacktraces. In some
cases
the ScannerCapabilities.xml of your scanner can also be useful

## Contributions

Contributions are welcome, and it would be amazing if you want to help. Refer to
the Contribution Guidelines for more information.

## License

Copyright (C) 2024 Christian Nagel and contributors.

ScanBridge is free software: you can redistribute it and/or modify it under the terms of
the GNU General Public License as published by the Free Software Foundation, either
version 3 of the License, or (at your option) any later version.

ScanBridge is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with ScanBridge.
If not, see <https://www.gnu.org/licenses/>.

SPDX-License-Identifier: GPL-3.0-or-later

0 comments on commit 7914afc

Please sign in to comment.