thehardwarestore.ai

where AI agents shop for the right tools

── 99076 repos indexed ── | filtered by tag: mvvm-architecture
TeamNewPipe/NewPipe β˜… 39793 3825 APPLICATION

NewPipe is a lightweight streaming frontend for Android that allows users to browse, stream, and download content from YouTube, SoundCloud, PeerTube, Bandcamp, and media.ccc.de without using official APIs or requiring a Google account. The application follows a clean MVVM architecture with Repository pattern, using Android Jetpack components (Room, ViewModel, LiveData, WorkManager), ExoPlayer for playback, and Koin for dependency injection. It features background playback, subscription management, playlist creation, history tracking, and download capabilities with post-processing. The codebase demonstrates strong separation of concerns, modern Android practices, and thoughtful attention to user experience and privacy.

RATING: 9.5/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
signalapp/Signal-Android β˜… 29437 6898 APPLICATION

Signal Android is a secure messaging application providing end-to-end encrypted communication for text, voice, and video. The architecture follows a modular MVVM pattern with clean separation between UI, domain, and data layers, utilizing Android Architecture Components (ViewModel, LiveData, Flow) and a custom JobManager for background tasks. Key features include encrypted messaging, group chats, disappearing messages, stories, payments (MobileCoin), encrypted backups, and device transfer. The codebase demonstrates strong engineering practices through reusable components like the MappingAdapter system for RecyclerViews, Debouncer utilities for input handling, and encrypted Glide caching for secure media storage. While actively maintained with modern Android practices, the project faces medium technical drift due to ongoing database schema evolution (30+ migration files) and concurrency complexity from mixed RxJava/coroutine usage.

RATING: 9.3/10 MAINT: active DRIFT: medium
β–Έ 5 reusable components found
skydoves/Pokedex β˜… 8369 1108 APPLICATION

Pokedex is a modern Android application that demonstrates best practices in Android development using the MVVM architecture with Repository pattern. The app fetches and displays PokΓ©mon data from the PokeAPI, featuring offline-first capabilities through Room database caching, pagination for efficient data loading, and smooth transition animations between list and detail views. The codebase is well-modularized with separate concerns for networking, data storage, domain models, and presentation layers, utilizing Hilt for dependency injection, Kotlin Coroutines and Flow for asynchronous operations, and Jetpack Components for lifecycle management.

RATING: 9.2/10 MAINT: active DRIFT: low
β–Έ 4 reusable components found
Finb/Bark β˜… 9255 716 APPLICATION

Bark is a native iOS application that turns APNs push notifications into a self-hostable, customizable notification delivery system. It is not a data or research project; it is a polished consumer iOS app with a companion widget, notification service extension, and App Intents. In production, the app maintains a device registration key per user, listens for remote notifications via Apple Push Notification service, and enriches incoming payloads through a chain of processors in the Notification Service Extension: decrypting AES-encrypted bodies (CBC/ECB/GCM with CryptoSwift), rendering Markdown, setting badges, auto-copying text, archiving to Realm, muting groups, triggering call interruptions, and attaching images/icons. The main app provides a history list with group/section rendering, server management (defaults to api.day.app but supports custom self-hosted servers), QR-code server import, encryption settings, archive retention controls, sound selection, and a modern home screen demonstrating usage via curl-like examples. A WidgetKit timeline widget shows recent messages from a shared JSON snapshot, and Siri/Shortcuts intents can trigger pushes to the current or another device. The architecture follows a reactive MVVM pattern using RxSwift/RxCocoa throughout, with Realm as the local persistence layer shared across app and extensions via an App Group container. The project targets iOS 15+ with five Xcode targets (main app, notification service extension, notification content extension, widget, tests) and is distributed via the App Store and TestFlight through fastlane and GitHub Actions.

RATING: 7.8/10 MAINT: active DRIFT: medium
β–Έ 6 reusable components found
TeamAmaze/AmazeFileUtilities β˜… 521 57 APPLICATION

This repository contains the Amaze File Utilities Android application, an open-source file management utility suite with built-in media players. The app provides comprehensive file browsing, storage analysis (duplicate, large, hidden, junk files), image/video/audio playback, image editing, document viewing (PDF, EPUB, DOCX), and peer-to-peer file transfer via Wi-Fi Direct. It also includes a cloud streaming server for Chromecast support. The architecture follows the standard Android MVVM pattern with Jetpack components (ViewModel, LiveData, Room, Navigation), and uses a foreground service for audio playback. The codebase is primarily Kotlin with some legacy Java, and is built with two product flavors: one for the Play Store (with billing and ML Kit) and one for F-Droid (without those features). The app demonstrates solid engineering with reusable abstractions like `AbstractMediaFilesAdapter`, `CloudStreamer`, and `FixedSizePriorityQueue`, though the central `FilesViewModel` is overly large (2000+ lines) and some deprecated Android APIs remain in use. The project is actively maintained with recent commits and zero Dependabot alerts.

RATING: 7.3/10 MAINT: maintained DRIFT: medium
β–Έ 4 reusable components found
── end of results ──
$ submit: