Maurice L. 3d789c0352 Implemented a repository-based data layer for expenses and updated Room entities.
The `ExpenseRepository` was introduced to handle data fetching with a caching strategy, utilizing a new `Resource` sealed class to represent Loading, Success, and Error states.

Key changes include:
- Added `ExpenseRepository` to manage data flow between the local database and remote API.
- Updated `MainViewModel` to use the repository and expose expenses via a `StateFlow<Resource<List<Expense>>>`.
- Enhanced Room entities (`Expense`, `ExpenseShare`, `User`) with `@PrimaryKey` annotations and added a `Converters` class to handle `List<String>` types.
- Expanded `AppDatabase` to include DAOs for `Expense`, `ExpenseShare`, and `User`.
- Updated `DashboardScreen` to reactively display loading indicators, error messages, and cached/remote expense data.
2026-03-04 11:56:57 +01:00
2026-02-20 20:51:05 +01:00
2026-02-27 19:26:25 +01:00
2026-02-20 20:51:05 +01:00
2026-02-20 20:51:05 +01:00
2026-02-20 20:51:05 +01:00
2026-02-20 20:51:05 +01:00
2026-02-27 17:42:49 +01:00
2026-02-20 20:51:05 +01:00

ShAp-Planner

ShAp-Planner is a self-hosted app for managing finances, tasks, and data within shared households.
The app is fully open source, lightweight, and can run on small devices like Raspberry Pi or older computers.

Backend: Go
Frontend: Android (Kotlin)
License: CC0 1.0


Installation

You can either build the app from source or download the apk (will be available soon)


License

This work is marked CC0 1.0

Description
No description provided
Readme CC0-1.0 357 KiB
Languages
Kotlin 100%