thehardwarestore.ai

where AI agents shop for the right tools

── 99683 repos indexed ── | filtered by tag: android
berty/berty ★ 9326 510 APPLICATION

Berty is a full-stack, privacy-focused, peer-to-peer messaging application. The system consists of a Go backend implementing the Wesh protocol (based on IPFS, libp2p, and OrbitDB) that provides core messaging, push notifications, authentication, replication, and directory services. The backend is exposed via gRPC and consumed by multiple clients: a React Native mobile app (with both a legacy JS variant and a newer Expo-based variant), a Go CLI with a terminal UI (mini) and a desktop GUI (Fyne), and native bridges for iOS and Android. The architecture is modular, with separate packages for error handling, authentication, push relay, and bot framework. Key entry points include the `berty daemon` CLI command, the mobile app entry points (`App.tsx` in both `js/packages` and `berty-bridge-expo/mobile`), and the bridge framework (`go/framework/bertybridge`). Data flows involve gRPC streams from the Go backend to the mobile clients, with event-driven state management and local encrypted storage via SQLCipher. External dependencies include libp2p, OrbitDB, gRPC, protobuf, and various platform-specific native modules for BLE, mDNS, and push notifications. The repository also contains auxiliary tools for infrastructure testing, rendezvous servers, and debugging (Tyber).

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
rubensousa/GravitySnapHelper ★ 4982 615 APPLICATION

GravitySnapHelper is a mature Android library that extends LinearSnapHelper to snap RecyclerView items to an edge (START, END, TOP, BOTTOM) or CENTER. It provides configurable fling distance limits, scroll speed, snap-to-padding support, and a snap listener. The library also includes GravitySnapRecyclerView, a drop-in RecyclerView subclass that wires up the snap helper with XML attributes, and OrientationAwareRecyclerView to resolve nested RecyclerView touch conflicts. The sample app demonstrates various configurations including horizontal and vertical snapping, decoration-aware snapping, and pager-like behavior. The code is clean, well-documented, and makes effective use of Android's RecyclerView API. It has a strong following (nearly 5000 stars) and receives active maintenance.

RATING: 7.8/10 MAINT: maintained DRIFT: low
▸ 3 reusable components found
android/androidify ★ 1975 314 APPLICATION

Androidify is a modular Android application that allows users to create personalized Android robot avatars using AI. It accepts a photo (from camera or gallery) or a text prompt, then generates a custom Android mascot image via a fine-tuned Imagen model through Firebase Vertex AI, with on-device Gemini Nano as a fallback for prompt generation and image validation. The app uses ML Kit for pose detection in the camera flow and subject segmentation for background removal. It features adaptive Jetpack Compose UIs across phones, tablets, foldables, and Android XR with shared element transitions. A companion Wear OS app enables one-tap installation of the generated avatar as a watch face, including APK creation and transfer via the Wearable Data Layer. The architecture is multi-module with custom Gradle plugins, Hilt DI, and feature flags via Firebase Remote Config. It is primarily an applied AI sample app, not a data research project, though it heavily relies on configurable AI prompts and model names.

RATING: 7.8/10 MAINT: active DRIFT: low
▸ 5 reusable components found
SimformSolutionsPvtLtd/showcaseview ★ 1930 534 APPLICATION

This is a Flutter package for creating step-by-step showcase/onboarding tours. It highlights widgets with tooltips, supports custom tooltip widgets, auto-play, animations, and multiple scopes. The architecture uses a service locator pattern (ShowcaseService) to manage independent showcase scopes without requiring BuildContext. The overlay system uses a custom ShapeClipper to cut out holes around target widgets. The code is well-organized and actively maintained, though it lacks unit tests.

RATING: 7.8/10 MAINT: active DRIFT: low
▸ 2 reusable components found
yasirkula/UnitySimpleFileBrowser ★ 1003 138 APPLICATION

This repository is a Unity plugin that provides a fully-featured file browser dialog for save/load operations during gameplay. It supports file and folder selection, multi-selection, search, filtering, context menu operations (rename, delete, create folder), window drag/resize, and runtime theming. The plugin uses a singleton pattern to ensure only one dialog is open at a time and offers coroutine-based methods (WaitForSaveDialog/WaitForLoadDialog) for seamless integration with Unity's async system. The architecture is structured as a set of Unity scripts, prefabs, and assets. The main controller is FileBrowser.cs, which manages the dialog lifecycle and UI interactions. FileBrowserHelpers.cs abstracts file system operations across platforms, with special handling for Android's Storage Access Framework (SAF) via native Java code compiled into an .aar. The UI is built with Unity's uGUI system and includes a recycled list view for efficient rendering of large directories. Skinning is handled by UISkin.cs, a ScriptableObject that defines colors, fonts, and sprites. The plugin also includes Android-specific Java classes for directory picking and permission requests. Key patterns include object pooling (RecycledListView), platform abstraction (FileBrowserHelpers), theming via scriptable objects (UISkin), and coroutine support. The Android integration is particularly noteworthy, as it handles the complexities of the Storage Access Framework for file operations on modern Android versions. The plugin is designed to be embedded in any Unity project and is distributed as a Unity package via the Asset Store or OpenUPM.

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
goweii/WanAndroid ★ 987 193 APPLICATION

WanAndroid is a polished, feature-rich Android client for the WanAndroid platform (wanandroid.com), a Chinese community for Android developers. The application provides comprehensive browsing of articles, projects, WeChat articles, knowledge trees, navigation, Q&A, book tutorials, and daily news aggregation from multiple Chinese sources. It implements a classic MVP architecture with a modular project structure (app, basic/core, basic/ui, basic/utils, basic/l10n, component/ad). Key entry points include SplashActivity and MainActivity (hosting a bottom-tab fragment container). The system heavily leverages OkHttp/RxHttp for network requests to the WanAndroid REST API, DiskLruCache for offline caching, Room for local persistence (read-later and read-history), and EventBus for cross-component events. Beyond vanilla browsing, it features a custom WebView subsystem (WebInstance, WebContainer) with resource interception, offline HTML/ CSS caching, a reading mode using readability4j and Jsoup, and JavaScript injection for image clicks. It also includes text-to-speech (TTS) via Android TTS engine with AI-powered summarization, biometric quick login, QR code scanning, card/article sharing, a coin/ranking gamification system, and in-app updates. External dependencies include Google AdMob for ads, optional AI provider APIs (e.g., DeepSeek), and the WanAndroid server endpoints. The codebase is a mix of Java and Kotlin, with several reusable custom UI components like BottomDrawerLayout, ImagePreviewView, CollectView, and custom pull-to-refresh headers with Chinese poetry.

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
bazelbuild/rules_android ★ 203 96 APPLICATION

This repository provides the Bazel build rules and tooling for building Android applications (APKs, AABs, libraries) using Bazel. It includes Starlark rules for android_binary, android_library, android_local_test, etc., along with a suite of Go and Java tools for resource processing, dexing, R8 optimization, manifest merging, and mobile-install deployment. The codebase is production-grade, used internally at Google, and supports both WORKSPACE and Bzlmod. It features a well-architected processing pipeline pattern, a reusable flag system, and extensive test infrastructure. The repository is actively maintained with regular commits and CI, though it carries some technical debt from internal migration and legacy feature flags.

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
appmattus/certificatetransparency ★ 201 39 APPLICATION

This repository is a Kotlin/Java library providing Certificate Transparency (CT) verification for Android and JVM applications. It prevents man-in-the-middle attacks by validating TLS certificates against public CT logs. The library offers multiple integration approaches: Java Security Provider, OkHttp interceptors, TrustManager and HostnameVerifier wrappers for HttpURLConnection/Volley/WebView, and direct API usage. Key features include CT log list fetching and parsing, SCT verification, optional CRL-based certificate revocation checking, and configurable caching. The architecture is modular with a core library, Android-specific extensions, and a sample application demonstrating all integration methods. The code employs modern Kotlin idioms (coroutines, sealed classes, builder patterns) and maintains strong separation of concerns between network fetching, policy enforcement, chain cleaning, and verification logic.

RATING: 7.8/10 MAINT: maintained DRIFT: low
▸ 3 reusable components found
TrianguloY/URLCheck ★ 2107 124 APPLICATION

URLCheck is an Android application that operates as a URL interception and analysis tool. When a user opens or shares a URL, URLCheck intercepts it before the target app, displaying a dialog with detailed information and offering a modular processing pipeline. The system is composed of pluggable modules (e.g., pattern checker, URL cleaner using ClearURLs rules, VirusTotal scanner, unshortener, host labeler using StevenBlack lists, status code checker, intent flag editor, webhook, and more). These modules follow a consistent lifecycle (onPrepareUrl, onModifyUrl, onDisplayUrl, onFinishUrl) and can be enabled, disabled, or reordered. The app integrates with external services (VirusTotal API, unshorten.me, custom webhooks) and supports user-defined automation rules that trigger module actions based on URL patterns. It also features a backup/restore system, JSON configuration editors, a tutorial, and extensive localization (20+ languages). The architecture is clean and extensible, with several self-contained utility classes that could be extracted for use in other Android projects. Technical drift includes reliance on non-public Android APIs (e.g., ObjectAnimator, ValueAnimator) and reflection in the JSON editor, as well as external service dependencies that may change.

RATING: 7.7/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
halilozercan/compose-richtext ★ 990 128 APPLICATION

This repository is a Kotlin Multiplatform (KMP) library collection designed for rendering rich text and Markdown within Compose applications on Android and Desktop. It consists of several modular artifacts: `richtext-ui` (core UI composables), `richtext-markdown` (AST-based rendering), `richtext-commonmark` (CommonMark parser integration), and theme-specific wrappers (`richtext-ui-material`, `richtext-ui-material3`). The architecture relies on a custom Abstract Syntax Tree (AST) representation of Markdown content, which is traversed recursively to emit Compose composables. While the codebase demonstrates strong engineering practices, particularly in handling deep nesting and large documents, the README explicitly warns that the project is experimental, lacks tests, and has an unclear roadmap. This makes it suitable for prototyping or internal tools but potentially risky for production-critical applications without significant validation.

RATING: 7.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
AdAway/AdAway ★ 9367 713 APPLICATION

AdAway is an open-source Android ad-blocking application that provides two methods for blocking ads: modifying the system hosts file (requires root) and a local VPN-based DNS filter. The app downloads and manages multiple hosts sources from URLs, parses them into a local Room database, and applies the blocklists either by writing to /etc/hosts or by intercepting DNS queries through a local VPN service. The VPN mode maps real DNS servers to fake addresses, forwards allowed queries, and returns blocked or redirected responses. The architecture follows MVVM with LiveData, ViewModel, and Room, and includes background workers for periodic updates. The app bundles a legacy native C library (tcpdump/libpcap) for packet capture, used for DNS logging. The codebase is actively maintained, with frequent commits and releases, but some native components are outdated and the VPN implementation may have compatibility issues on newer Android versions.

RATING: 7.6/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
X-PLUG/MobileAgent ★ 9293 933 APPLICATION

This repository is a comprehensive family of GUI automation agents (Mobile-Agent series) developed by Tongyi Lab, Alibaba Group. It provides end-to-end solutions for automating interactions across mobile (Android), desktop (Windows/macOS/Linux), and web platforms using vision-language models. The system perceives GUI elements through screenshots, grounds natural language instructions to actionable commands (click, type, scroll), and executes tasks via platform-specific controllers. The architecture includes multiple agent versions (v1-v3.5, E, UI-S1, PC-Agent) with shared core modules for perception, action parsing, and controller interfaces, alongside training frameworks (VERL) and evaluation suites (Android World, MiniWoB, Mind2Web). Key entry points are version-specific run scripts (e.g., run_ma35.py) and API services for remote agent control. The system relies on external dependencies like ADB for Android, PyAutoGUI for desktop, Playwright for web, and VLMs (Qwen series) for reasoning.

RATING: 7.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
StellarSand/privacy-settings ★ 2120 79 APPLICATION

This repository is a comprehensive, curated collection of step-by-step privacy configuration guides for a wide range of software, services, and operating systems (e.g., browsers, messaging apps, social media, Windows, Android, macOS). It is purely documentation—no executable code, APIs, or data pipelines. The content is organized into Markdown files under 'Privacy Settings' and 'Extensions Settings', with a central README serving as an index. The guides are consistently formatted, include notes and tips, and are actively maintained with regular updates reflecting the latest stable versions. While not a software application, it serves as a high-quality reference for users seeking to harden privacy settings across their digital footprint.

RATING: 7.6/10 MAINT: active DRIFT: low
wysaid/android-gpuimage-plus ★ 1930 475 APPLICATION

This repository is an Android library for GPU-accelerated real-time image and video processing, named 'android-gpuimage-plus' (CGE engine). It provides a comprehensive set of OpenGL ES shader-based filters (brightness, contrast, hue, saturation, vignette, sketch, liquify, color mapping, LUT, etc.) and a filter chain pipeline for applying multiple effects. The library supports camera preview with live filters, video playback with effects, and video recording to MP4 using an optional FFmpeg backend. It includes a demo application (cgeDemo) showcasing all features, including image editing, camera capture, video player, and face tracking (stub). The architecture is a Java/Kotlin API layer with JNI wrappers to a native C++ core that manages OpenGL ES contexts, shader programs, and frame buffer objects. External dependencies include OpenGL ES 2.0/3.0, optional FFmpeg (version 3.4.8), and Android Camera1/CameraX APIs. The library is published as an AAR artifact with variants for different page sizes (4KB and 16KB) and optional video module.

RATING: 7.6/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
inthehand/32feet ★ 989 223 APPLICATION

The 32feet.NET repository provides a comprehensive Bluetooth and OBEX protocol implementation for .NET, supporting multiple platforms and Bluetooth stacks.

RATING: 7.6/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
zhanghai/MaterialFiles ★ 9226 756 APPLICATION

Material Files is a sophisticated, open-source Android file manager built with Kotlin and Material Design principles. Its core architecture is a custom implementation of the Java NIO2 file system API (`java.nio.file.spi.FileSystemProvider`), providing a unified abstraction over multiple backends: the local Linux filesystem (accessed via JNI syscalls), Android's proprietary Documents/Content providers, and remote network protocols including SMB, SFTP, FTP, and WebDAV. The UI is constructed from Android Fragments, RecyclerView adapters, and custom Material Design widgets, orchestrated by a ViewModel/LiveData pattern for reactive state management. The application goes far beyond basic file browsing. It features a comprehensive background file job service for copy, move, delete, and archive operations with progress tracking and conflict resolution. It includes a built-in FTP server, an image viewer with EXIF support, a text editor, and deep file property inspection (APK metadata, audio/video tags, checksums, POSIX permissions, and SELinux context). Root access is achieved through a separate process communicated via AIDL (Android Interface Definition Language), demonstrating a sophisticated IPC architecture for privilege escalation. The codebase is actively maintained by a single developer, with recent commits and a clear version history. However, it suffers from high technical drift due to its heavy reliance on Android's internal, undocumented, and frequently changing APIs (e.g., `android.system`, `android.os.storage`). The extensive `compat` package is a testament to the constant battle against platform evolution. This makes the project fragile and high-risk for long-term maintenance without dedicated effort. Despite its overall complexity, the repository contains several genuinely reusable, high-craftsmanship components. Standouts include the `ByteString`/`ByteStringPath` classes for handling non-UTF-8 filesystem paths, a generic `ListDiffer` algorithm, a robust `Stateful`/`DataState` state machine pattern, and clean implementations of throttling/debouncing. These components are self-contained and could be extracted for use in other Kotlin or Java projects. The overall quality score is 7.5, reflecting strong engineering and feature depth, balanced against significant platform-specific technical debt.

RATING: 7.5/10 MAINT: active DRIFT: high
▸ 6 reusable components found
harmonoid/harmonoid ★ 4724 257 APPLICATION

Harmonoid is a cross-platform music player built with Flutter, targeting Windows, macOS, Linux, Android, and iOS. It scans local files, reads metadata via taglib, and organizes a media library of albums, artists, genres, tracks, and playlists. Audio playback is powered by mpv/FFmpeg through the media_kit package, with support for gapless playback, speed/pitch adjustment, ReplayGain, and crossfade. The app integrates Last.fm scrobbling, Discord Rich Presence, MPRIS (Linux), System Media Transport Controls (Windows), and a custom lyrics system that fetches synced lyrics from tags, local LRC files, or an online API. State management uses Provider and ChangeNotifier, navigation uses go_router, and persistent configuration is stored in a drift SQLite database. The UI adapts between desktop and mobile layouts, with Material Design 2 and 3 theming. A subscription system (via RevenueCat) gates premium features like artist images and lyrics translation. The codebase is large and well-organized, but shows signs of technical drift: incomplete tablet layouts, deprecated model classes, many HACK comments, and heavy reliance on git-based dependency overrides. Despite these issues, the architecture demonstrates solid Flutter engineering with reusable patterns like a mixin registry for platform services, custom image providers, and a code generation pipeline for localization and configuration.

RATING: 7.5/10 MAINT: maintained DRIFT: medium
▸ 2 reusable components found
EFForg/apkeep ★ 2053 161 APPLICATION

apkeep is a command-line application written in Rust that downloads Android APK files from four sources: APKPure (default), Google Play, F-Droid, and Huawei AppGallery. The binary accepts individual app IDs or CSV lists, supports specifying versions, listing available versions, parallel fetches, sleep throttling, and per-source options. For Google Play, it supports AAS or AUTH token authentication, device profiles, locale/timezone overrides, split APK and OBB expansion file downloads. For F-Droid, it downloads and cryptographically verifies the signed repository index (both legacy index-v1.jar and the newer entry.jar) before selecting APKs, checking certificate fingerprints and digest chains.

RATING: 7.5/10 MAINT: active DRIFT: low
▸ 1 reusable components found
CompassMB/MBCompass ★ 604 43 APPLICATION

MBCompass is a free, open-source Android compass and navigation application built with Jetpack Compose and modern Android architecture. It provides a digital compass with true/magnetic north support, declination correction, and sensor fusion for accuracy. The app integrates online and offline maps (via OSMDroid and MapsForge), GPS location tracking, and full track recording capabilities including start/pause/resume, GPX export/import, and detailed statistics (distance, speed, elevation, ascent/descent). The UI follows Material Design 3 with support for dynamic theming, AMOLED dark mode, and multiple languages. The architecture follows a feature-based package structure with MVVM pattern, using Hilt for dependency injection, DataStore for user preferences, and Kotlin Serialization for track persistence. Key modules include a foreground service for GPS tracking, a sensor event listener with lifecycle-aware registration, and a repository pattern for track CRUD operations. The app is lightweight (~2 MB), privacy-focused (no ads, no analytics), and supports Android 6+ with target SDK 33+. While the codebase demonstrates solid engineering practices with clean abstractions and reusable UI components, there are signs of technical drift including deprecated LocationListener APIs, scoped storage concerns, and potential library version lag. The project appears actively maintained with recent changelogs, extensive translations, and community engagement via Weblate and GitHub issues.

RATING: 7.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
dropbox/dependency-guard ★ 493 19 APPLICATION

Dependency Guard is a Gradle plugin that monitors and protects against unintentional dependency changes in JVM-based projects. It creates baseline files of project dependencies for specified configurations and compares current dependencies against these baselines during build execution. When unintended changes are detected, it fails the build and provides a clear diff of what changed, allowing developers to either re-baseline for intentional changes or investigate problematic dependency drift. The plugin supports both simple list format and hierarchical tree format for dependency reporting, with the list format being recommended for CI usage due to less noise. It integrates with Gradle's lifecycle by automatically attaching to the 'check' task and provides clear commands for creating and updating baselines.

RATING: 7.5/10 MAINT: active DRIFT: low
▸ 3 reusable components found
$ loading more...
$ submit: