Lightweight digital wallet to securely scan, store, and manage loyalty cards offline.
- 100% Offline & Private: No tracking, no data collection, and no internet connection required to manage your cards.
- Fast Barcode Scanning: Easily scan physical cards using your device's camera or import them from images.
- Encrypted Storage: Protect your sensitive cards and data with password-secured local encryption.
- Screen Brightness Control: Automatically adjusts your screen brightness when displaying a card for seamless scanning at checkout counters.
- Import & Export: Take full control of your data with easy backup and restore options.
- Modern, Lightweight UI: Fast, clean design optimized for daily use without bloat.
More info here
OR
- β¬οΈ Download latest official release β¬οΈ.
- Locate the "cardabase-(version you got).apk" file (usually in the Internal storage/Downloads folder).
- Allow installing apps from unknown sources.
- Install it by clicking on the "Install" button.
Note
F-Droid releases might not be in sync with those from GitHub.
- add a counter to every card, so when card is clicked, it would add a point, then this could be used to sort by the most used cards
- custom color theme, custom theme builder
- advanced front image editor
- idk, let me know via issues ;)
Currently, the app uses these permissions (+ why are they needed) :
- android.permission.WRITE_EXTERNAL_STORAGE - used by the storage system to save the app's data, mandatory
- android.permission.READ_EXTERNAL_STORAGE - used by the storage system to save the app's data, mandatory
- android.permission.MANAGE_EXTERNAL_STORAGE - used by the import and export system, optional
- android.permission.WRITE_SETTINGS - used by the brightness controller, optional
- android.permission.VIBRATE - used to vibrate the device on actions, optional
- android.permission.INTERNET - used to check the latest version of the app and fetch the online changelog, optional
- android.permission.CAMERA - used to read barcodes and take pictures of the cards, optional
- android.permission.READ_MEDIA_IMAGES - used to select images for cards, optional
- android.permission.READ_MEDIA_VISUAL_USER_SELECTED - used to select images for cards, optional
- android.permission.USE_BIOMETRIC - for fingerprint verification if a card password is used, optional
- Edin DivoviΔ
- Wim Van Laer
- All the bug reporters that make the app even better.
For support, message me on Discord: "georgeyt9769".
Contact me for more info :). If your phone does not have issues with the app, you can add your device into the Tests file.
git clonethe repository,cd cardabase-appinto it,flutter pub getto download the dependencies,flutter build apkin Terminal (you can add--split-per-abiif you want to get multiple versions).
Note
Signing of the app is ON. You need a singature key and a key.properties in the /cardabase-app/android folder or else the build will fail. You can change THIS LINE to debug to sign it with a debug key.
Used versions:
- Flutter: 3.38.5 (or newer, used Flutter version is always added as a submodule, so you can use that one)
- Java: JDK-21
- Gradle: 8.14.2
Note: Java and Gradle versions must be compatible with each other. See this Compatibility Matrix.
You may need to:
- Specify JAVA_HOME in gradle.properties =
android/gradle.properties, add a lineorg.gradle.java.home="C:\\path\\to\\the\\jdk", where you have to specify your path, (<- in case of multiple/no versions or JAVA_HOME environment variable not specified) - Change Gradle version in gradle-wrapper.properties =
android\gradle\wrapper\gradle-wrapper.properties, last line "distributionUrl" (change the "X.X" or "X.X.X" number). (<- in case of different Gradle installation)










