$ show RJNY/Obtainium-Emulation-Pack
The Obtainium Emulation Pack is a curated collection of Android app configurations for the Obtainium updater tool, focused on emulation, frontend utilities, and related tools. It processes a sparse JSON definition file (src/applications.json) through a pipeline of Python scripts to generate two variant-specific JSON files (standard and dual-screen) that users import into Obtainium for automatic app updates. The architecture centers around a Justfile task runner orchestrating validation, normalization, documentation generation, and minification scripts. Key features include sparse settings storage (only non-default values), variant inclusion flags for dual-screen compatibility, automated live testing of update sources, and scheduled CI workflows that detect and report breakages via GitHub issues. The system emphasizes ease of setup: install Obtainium, import the JSON, and receive updates for over 100 curated apps.
The LLM identified 2 files worth highlighting for reuse:
Provides shared functions for detecting update sources (GitHub, HTML, Codeberg), hydrating sparse settings with schema defaults, generating Obtainium deep links, and loading environment variables. Demonstrates skill in handling the Obtainium API and settings hydration pattern, making it reusable for any project processing Obtainium app configurations with minimal coupling to internal modules.
Reads a sparse JSON configuration, orders keys consistently, and injects default values from a schema. Implements the sparse settings pattern (storing only non-default values) which reduces configuration size and improves maintainability. This pattern is reusable for any JSON-based configuration system, requiring only the schema definition and showing non-obvious skill in managing configuration inheritance.