Releases: kequach/cashbacktracker
Releases · kequach/cashbacktracker
v0.2.0 - now with sounds and milestone progress bar!
v0.2.0 - 2026-06-26
User-facing features
- Separate purchase and payout accounts - cashback entries now store the purchase account and payout account separately; data rows and CSV exports show separate nickname, IBAN, and account-holder columns for both account roles.
- Duplicate-use warnings per account role - repeated promotions mark previously used purchase accounts, payout accounts, and devices while keeping those options selectable.
- CSV import - the
Datentab can import the app's CSV backup format and recreate missing bank accounts or devices from the file. - Action-period markers - the data list highlights entries that are not yet in the
Aktionszeitraumand planned entries whoseAktionszeitraumhas already expired. - Milestone progress and celebrations - the data tab shows animated progress from the last reached milestone toward the next one, with milestone thresholds at 5, 10, 25, 50, 100, 150, 250, 500, 750, and 1000 EUR.
- Celebration queue and sounds - celebration cards stack with spacing instead of overlapping; paid cashbacks and milestones play short original reward sounds through the Android media audio stream.
- Cashback URL normalization - the parser accepts cashback links without an
https://prefix and normalizes them before parsing or saving. - Selection focus handling - dropdown suggestions, account/device selections, and date-picker actions clear text input focus so the keyboard does not reopen unexpectedly.
Build and data maintenance
- APK size optimization - release builds now use R8 minification and resource shrinking, unused dependencies were removed, and Material icon usage was replaced with small local vector assets.
- Fresh local database baseline - early-development local storage now uses a fresh
cashback-tracker-v1.dbfile to avoid conflicts with older test installs that used the previous version-1 schema.
Docs
- English end-user README - README now focuses on installation, first steps, privacy, CSV export, and everyday app usage.
- Development guide - build, CI, signing, release, and versioning details moved to
DEVELOPMENT.md. - Changelog and guardrails - documentation now describes purchase account and payout account separately.
- Prompt-level changelog guardrail -
AGENTS.mdnow requires a changelog impact check for every prompt and aCHANGELOG.mdupdate for substantive changes. - Changelog grouping guardrail -
AGENTS.mdnow requires current-release changelog entries to describe final behavior instead of artificial same-release improvements. - German umlauts - German UI terms now use umlauts consistently in the app and docs.
v0.1.0 PoC
v0.1.0 - 2026-06-25
Initial Android app release.
New features
- Local cashback tracking - native Android app for tracking cashback promotions with product name, cashback URL, redemption date range, purchase price, IBAN, device, notes, and status.
- Three app areas -
Eingabefor creating cashback entries,Datenfor all saved cashback records, andStammdatenfor bank accounts and devices. - Cashback statuses - entries can be saved as
GeplantorEingereicht, then cycled by tapping a data-list row throughGeplant,Eingereicht, andUeberwiesen. - Local master data - bank accounts store nickname, account holder, and IBAN; devices store name and notes.
- CSV export - manual unencrypted CSV export for saved cashback data, with an explicit warning before writing readable data.
- Milestone celebrations - optional EUR milestone animations for reimbursed totals, with default thresholds of 100, 500, and 1000 EUR.
- Entry celebrations - short non-blocking celebration animation when a cashback entry is created or marked as transferred.
- Autofill suggestions - cashback URL and product fields show recent unique entries and can autofill repeated promotions.
- Duplicate-use warnings - IBAN and device selectors mark previously used options for the same cashback promotion while keeping them selectable.
URL parsing
- User-triggered parser -
URL analysierenfetches HTTPS pages only after explicit user action and keeps manual editing available when parsing is incomplete. - Product and date extraction - best-effort parser fills product name and date-only redemption ranges from page title, headings, body text, meta data, image labels, and embedded script data.
- German cashback patterns - supports common phrases such as
Aktionszeitraum,Kaufzeitraum,Teilnahmezeitraum,Einloeseschluss,Start ist am, andbis zum. - Fallback title parsing - when a page cannot be read, the app derives a readable product hint from official campaign URLs or DealDoktor-style slugs.