How yojimbo1of1bd/kaka-sinventory works
Project Kaka is an offline Android app for personal inventory, moving cartons, care tasks, and double-entry personal finance. The main workflow is user interaction through the app UI, into inventory or finance repositories, and persistence in the local Room database; notable side flows include carton scanning, terminal commands, and local backup/export. Groups capture the product’s major capabilities and its data layer. Several feature links are documented in the README rather than shown in sampled implementation, so those edges cite the README; unsampled internal wiring is omitted.
Main entry points: AppDatabase.kt Room database · InventoryRepositoryImpl.kt Inventory repository · FinanceRepositoryImpl.kt Finance repository · KakaApplication.kt Dependency container
Components 26
App shell
- Activity and lock gate
app/src/main/java/com/projectkaka/inventory/MainActivity.kt - Compose app UI
app/src/main/java/com/projectkaka/inventory/ui/KakaApp.kt - Dependency container
app/src/main/java/com/projectkaka/inventory/KakaApplication.kt
Inventory and moving
- Inventory screens
app/src/main/java/com/projectkaka/inventory/ui/dashboard/DashboardScreen.kt - Draft capture
app/src/main/java/com/projectkaka/inventory/ui/drafts/DraftScreen.kt - Item detail and care
app/src/main/java/com/projectkaka/inventory/ui/detail/ItemDetailScreen.kt - Cartons and scanner
app/src/main/java/com/projectkaka/inventory/ui/basket/BasketsScreen.kt - Barcode tools
app/src/main/java/com/projectkaka/inventory/util/BarcodeAnalyzer.kt - Visual belongings map
app/src/main/java/com/projectkaka/inventory/util/VisualMapGenerator.kt - Inventory repository
app/src/main/java/com/projectkaka/inventory/data/repository/InventoryRepositoryImpl.kt
Finance and search
- Budget and statements
app/src/main/java/com/projectkaka/inventory/ui/dashboard/DashboardViewModel.kt - Ledger and liquidation
app/src/main/java/com/projectkaka/inventory/ui/liquidate/LedgerViewModel.kt - Terminal commands
app/src/main/java/com/projectkaka/inventory/search/TerminalExecutor.kt - Terminal session
app/src/main/java/com/projectkaka/inventory/ui/settings/TerminalSessionManager.kt - Finance repository
app/src/main/java/com/projectkaka/inventory/data/repository/FinanceRepositoryImpl.kt - Minor-unit money
app/src/main/java/com/projectkaka/inventory/model/Money.kt - Power search grammar
app/src/main/java/com/projectkaka/inventory/search/MagicInputParser.kt
Documents and backup
- Document management
app/src/main/java/com/projectkaka/inventory/data/repository/DocumentRepositoryImpl.kt - Backup and export
app/src/main/java/com/projectkaka/inventory/data/local/ExportWriter.kt
Local data and security
- Privacy preferences
app/src/main/java/com/projectkaka/inventory/data/settings/UserPreferences.kt - Room database
app/src/main/java/com/projectkaka/inventory/data/local/AppDatabase.kt - Inventory records
app/src/main/java/com/projectkaka/inventory/data/local/entity/ItemEntity.kt - Financial records
app/src/main/java/com/projectkaka/inventory/data/local/entity/AccountEntity.kt - Local image stores
app/src/main/java/com/projectkaka/inventory/data/local/LocalImageStore.kt
Other components
- User
- Android system
Connections 30
- User → Activity and lock gate: opens app
README.md - Activity and lock gate → Compose app UI: hosts UI
app/src/main/java/com/projectkaka/inventory/MainActivity.kt - Dependency container → Room database: provides database
app/src/main/java/com/projectkaka/inventory/KakaApplication.kt - Dependency container → Inventory repository: provides repository
app/src/main/java/com/projectkaka/inventory/KakaApplication.kt - Dependency container → Finance repository: provides repository
app/src/main/java/com/projectkaka/inventory/KakaApplication.kt - Compose app UI → Inventory screens: shows features
app/src/main/java/com/projectkaka/inventory/ui/KakaApp.kt - Inventory screens → Inventory repository: manages inventory
- Draft capture → Inventory repository: captures drafts
- Item detail and care → Inventory repository: manages care
- Cartons and scanner → Inventory repository: packs items
- Cartons and scanner → Barcode tools: scans labels
README.md - Inventory screens → Visual belongings map: exports infographic
README.md - Inventory repository → Finance repository: records liquidation
app/src/main/java/com/projectkaka/inventory/data/repository/InventoryRepositoryImpl.kt - Budget and statements → Finance repository: reads budget data
- Ledger and liquidation → Finance repository: manages ledger
- Finance repository → Minor-unit money: uses amounts
app/src/main/java/com/projectkaka/inventory/data/repository/FinanceRepositoryImpl.kt - Terminal session → Terminal commands: executes commands
app/src/main/java/com/projectkaka/inventory/ui/settings/TerminalSessionManager.kt - Terminal session → Android system: starts overlay
app/src/main/java/com/projectkaka/inventory/ui/settings/TerminalSessionManager.kt - Power search grammar → Inventory repository: filters inventory
README.md - Inventory repository → Room database: accesses Room
app/src/main/java/com/projectkaka/inventory/data/repository/InventoryRepositoryImpl.kt - Finance repository → Room database: uses transactions
app/src/main/java/com/projectkaka/inventory/data/repository/FinanceRepositoryImpl.kt - Room database → Inventory records: stores items
app/src/main/java/com/projectkaka/inventory/data/local/AppDatabase.kt - Room database → Financial records: stores accounts
app/src/main/java/com/projectkaka/inventory/data/local/AppDatabase.kt - Dependency container → Document management: provides documents
app/src/main/java/com/projectkaka/inventory/KakaApplication.kt - Document management → Room database: persists documents
app/src/main/java/com/projectkaka/inventory/data/repository/DocumentRepositoryImpl.kt - Backup and export → Room database: backs up database
README.md - Backup and export → Local image stores: archives images
README.md - Compose app UI → Backup and export: offers export
README.md - Compose app UI → Privacy preferences: configures privacy
README.md - Room database → Local image stores: stores image paths