30 open-source projects similar to tencent/shadow, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Shadow alternative.
VirtualAPK is an Android plugin framework and runtime environment designed to load and execute external Android packages dynamically. It functions as a component host that allows a main application to run activities, services, and providers delivered via external modules without requiring system installation or manifest registration. The framework enables dynamic feature delivery by loading external packages at runtime, allowing application functionality to be updated without redeploying the entire app. It provides a mechanism for Android sandbox execution, running isolated components within
Atlas is a modularization system and dynamic component framework for Android. It functions as a class isolation layer and incremental update engine, allowing application logic and resources to be decoupled into independent bundles that are loaded at runtime. The project distinguishes itself by providing physical bundle isolation through custom class loaders to prevent dependency conflicts and bypass method count limits. It enables the deployment of remote components and incremental patches, using bytecode diffs and resource patching to update specific application parts without requiring a ful
RePlugin is an Android plugin framework and component orchestrator designed to load external activities, services, and receivers into an application without updating the main binary. It functions as a dynamic feature delivery system that decouples application modules into independent plugins. The framework provides a communication bridge for bidirectional data exchange between the host application and external plugins, as well as inter-plugin synchronization. It manages the entire plugin lifecycle, including installation, version management, and integrity verification to ensure the safety of
DroidPlugin is an Android plugin framework designed to execute third-party APKs and native binaries without requiring installation or modifications to the host application manifest. It provides a native binary plugin host that allows the loading of C and C++ binaries through native hooks to extend core application functionality. The framework utilizes a component router to direct activities and services to external plugins, bypassing the need for manual registration in the host manifest. It further decouples external activities from the host lifecycle through a proxy-based mechanism. The sys
This project is a toolkit for modular Android application development, providing a framework to load external code, resources, and native libraries at runtime. It enables developers to structure applications into independent modules, facilitating dynamic feature deployment and the ability to update components without requiring a full application re-installation. The framework distinguishes itself through a robust orchestration system that manages the lifecycle and integration of these modular components. It employs custom class loading and resource injection to merge external modules into the
This project is an open-source 3D game engine designed for building high-fidelity games, simulations, and cinematic environments. It functions as a robotics simulation platform with native integration for ROS 2 to model robot controllers and sensors. The engine features a multi-threaded Forward+ physically based renderer that supports hardware-accelerated ray tracing and global illumination. The system is built on a modular extension architecture using Gems to add or replace features without modifying core binaries. It includes a native SDK for AWS cloud integration, enabling IAM authenticati
Dynamic-load-apk is an Android plugin framework that enables a host application to load and run uninstalled APK files as plugins at runtime. It provides the core infrastructure for loading APKs from storage, launching their activities, and managing their lifecycle without requiring the user to install them through the system package manager. The framework handles the fundamental challenges of running uninstalled code on Android through several key mechanisms. It isolates plugin classes in a separate DexClassLoader to prevent conflicts with the host class hierarchy, merges plugin resources int
AndroidNote is a technical knowledge base and reference resource for Android development. It provides comprehensive guidance on application architecture, custom view development, and advanced graphics programming. The project is distinguished by its depth in visual implementation, covering pseudo-3D perspective projections via virtual cameras and complex 2D rendering using Bézier curves and PorterDuff color blending. It also provides detailed methodologies for app modularization and the management of internal libraries through private Maven repositories and JitPack. The reference surface ext
Component is a modularization, navigation routing, and service location framework designed for Android applications. It provides architectural primitives that split large codebases into decoupled feature modules, enabling independent module execution and automated module lifecycles during startup and shutdown. Compile-time annotation processing generates routing metadata and proxy classes to eliminate manual configuration overhead while supporting interface-based service discovery and type-safe screen transitions. The framework manages cross-module communication and navigation through a centr
The GoldSrc game engine is a 3D game framework and first-person shooter engine designed for building and running interactive software. It functions as a moddable game framework, providing a system for creating custom game rules and content through client-side code and shared libraries. The project includes a game engine SDK and development tools for compiling custom game logic into dynamic link libraries. This modular structure allows for the development and distribution of game modifications on Windows and Linux platforms.
EvalXR is an interactive Rust compiler that compiles code into dynamically loaded libraries for iterative evaluation without restarting the process. It serves as a Rust Jupyter kernel, a notebook runtime, and a REPL environment, all with state retention across evaluations. The project provides a stateful Rust evaluation engine that runs code snippets in isolated sandboxes while keeping functions and variables alive between executions. It supports cell-based execution, compiling Rust code into a shared library and loading it into the same process to preserve state, with an error-aware compilat
Bundletool is a command line toolkit for manipulating Android App Bundles and generating optimized APKs tailored to specific device configurations. It serves as a utility for converting bundles into monolithic or split installation files and validating the integrity and size of these packages before publishing. The tool differentiates itself through the ability to analyze device hardware specifications to extract only the required resource sets, reducing application download sizes. It also provides specialized capabilities for creating and exporting distribution archives for runtime-enabled s
uamp is an audio media application framework and reference implementation for building music playback applications on Android. It provides a cross-device media framework designed to maintain functional and visual consistency across phones, tablets, Wear OS, Android TV, and Android Auto. The project features specific implementations for automotive-safe music control and Google Cast integration for remote playback. It includes a multi-form factor UI kit that demonstrates how to adapt a single media codebase to various screen sizes and device types. The framework covers core media capabilities
WasmEdge is an extensible WebAssembly runtime that executes WebAssembly bytecode in a secure sandbox for cloud, edge, and embedded applications. It functions as a multi-language compiler, compiling applications written in Rust, JavaScript, Go, and Python into WebAssembly bytecode for sandboxed execution, and as a server-side JavaScript runtime that runs JavaScript programs with ES6 modules, NPM packages, and Node.js-compatible APIs. The runtime also serves as an AI inference runtime, executing AI models from JavaScript using WASI-NN plug-ins for inference tasks on personal devices and edge har
Geode is a game modification SDK and mod loader for Geometry Dash. It functions as a hooking engine and UI framework that allows for the injection of dynamic libraries to alter game behavior and add new features. The toolkit distinguishes itself through a centralized mod compatibility manager and hook registry that tracks active modifications to prevent logic conflicts and application crashes. It utilizes a trampoline-based hooking engine to redirect game function calls while preserving native call stacks, alongside a dedicated UI framework for rendering custom popups and interface components
WeChatExtension-ForMac is a plugin for the macOS WeChat client that provides a suite of extensions for account management, messaging automation, and visual customization. Its primary purpose is to enable the simultaneous operation of multiple user profiles within a single session and to automate communication tasks. The project distinguishes itself through specialized tools for content recovery and group analytics, such as intercepting recalled messages and monitoring member activity or departures within group chats. It also includes technical inspection capabilities for accessing restricted
RetroArch is a cross-platform emulation host and multi-system game emulator that serves as a frontend for the Libretro API. It coordinates video, audio, and user input to maintain the application state for various emulator cores, allowing it to run a wide variety of vintage gaming hardware and software engines. The platform distinguishes itself through a low-latency emulation model that uses run-ahead processing to reduce input lag. It also features a real-time state tracking system that enables gameplay rewinding by saving periodic snapshots of the emulator memory state. The environment inc
node-ffi is a foreign function interface library for Node.js that enables calling functions from native C dynamic libraries without writing manual C++ bindings. It serves as a system for loading shared objects and DLLs into process memory, translating JavaScript values into binary representations, and executing external binaries at runtime. The project utilizes a wrapper around the libffi library to construct call frames and execute native functions with dynamic arguments. It distinguishes itself by providing a native memory manager for allocating raw pointers and a mapping system that connec
Red-DiscordBot is a modular framework for building and self-hosting Discord bots. It functions as a server management tool and community moderation bot that can be tailored by enabling or disabling specific feature modules. The system is distinguished by its extensible plugin architecture, which allows for the integration of third-party modules and the development of custom functional packages. Users can manage bot behavior through a chat-based interface, enabling them to assemble custom bots and define unique responses and behaviors without writing new code. The framework covers a broad ran
JNA is a foreign function interface and native memory mapper that allows Java applications to call functions in shared native libraries without writing custom JNI wrapper code. It serves as a JNI alternative framework for invoking C functions and mapping native data structures using high-level interfaces. The library distinguishes itself through its ability to translate Java objects and primitives into C-style structs, unions, and pointers for cross-platform memory exchange. On Windows, it provides a dedicated toolkit for interacting with Component Object Model objects using both early and la
sqlite-vec is a C-based vector library and SQLite extension that adds virtual tables for storing and querying high-dimensional embeddings. It functions as a database plugin for performing nearest neighbor searches using distance metrics such as L2, cosine, and Hamming distance. The project provides a portable embedding store that supports deployment across Android, iOS, desktop environments, and web browsers via WebAssembly. It distinguishes itself by converting numerical arrays into compact binary formats and utilizing quantization to reduce the memory footprint and storage size of vector in
pywin32 is a collection of Python extensions that serve as a wrapper for the native Windows API, enabling the invocation of operating system functions to manage low-level system resources and hardware. It provides a core library for interacting with Component Object Model objects to automate native desktop applications, a framework for constructing native Windows GUI applications, and an interface for registering and running Python scripts as background system services. The project distinguishes itself by providing deep integration with the Windows environment, including the ability to bind P
Clojure is a general-purpose, functional programming language hosted on the Java Virtual Machine. It is a homoiconic S-expression language that represents programs as nested data structures, allowing code to be manipulated and evaluated as data. The project provides a framework for JVM interoperability, enabling the invocation of Java methods and integration with other JVM-based languages. It distinguishes itself through a persistent data structure library that uses bitmapped vector tries to manage immutable collections and a programmatic REPL for interactive software development and real-tim
This project is a reference Kotlin Android application template and a set of sample implementations demonstrating Clean Architecture principles. It provides a structural design that isolates core business rules from the user interface and data sources into distinct, layered modules. The implementation focuses on the Model-View-ViewModel (MVVM) pattern to decouple UI logic from data models. It utilizes a dependency injection framework to automate object creation and manage component lifecycles, while employing a repository pattern to abstract data requests across memory, disk, and cloud source
JavaCPP is a JNI C++ bridge and foreign function interface that provides a binding generator, a native library loader, and a native memory manager. It automates the creation of Java wrappers around native C++ headers and shared libraries to enable interoperability between the two languages. The project features a C++ binding generator that parses header files to automatically produce the necessary glue code and interfaces for calling native functions. It includes a native library loader that locates and extracts platform-specific binaries from the classpath into a local cache for runtime exec
POCO is a comprehensive C++ application framework that provides a cross-platform set of libraries for building network-centric applications. It offers a unified abstraction layer that wraps platform-specific APIs, enabling the same code to run across desktop, server, mobile, IoT, and embedded systems. The framework is organized into modular libraries that can be compiled and linked selectively, allowing developers to include only the components their application needs. The framework distinguishes itself through its broad coverage of application infrastructure needs, including threading and sy
This project is a clean architecture reference implementation and modular project template for Android development. It provides a structural blueprint designed to isolate business logic from external frameworks and user interfaces. The template emphasizes a modular approach to organize code into independent modules, which is intended to improve build times and long-term project scalability. It demonstrates the application of domain-driven design to keep core business rules and entities independent from the underlying platform. The implementation covers several key architectural patterns, inc
sofa-boot is a Spring Boot extension framework designed for enterprise service orchestration and middleware integration. It functions as a Java class loader isolator and Spring context manager, providing the mechanisms necessary to prevent dependency and bean conflicts within complex applications. The project differentiates itself by separating classes and contexts into distinct namespaces to resolve version conflicts between application libraries and middleware modules. It also acts as an enterprise middleware integrator, using standardized starters to automatically configure and connect app
Echo is a mobile music player designed for playing local audio files on mobile devices through a dedicated user interface. It functions as a local media indexer that scans and catalogs offline music files from device storage to build a searchable library. The application uses a plugin-based architecture to extend functionality without modifying the core code. This system allows for dynamic plugin loading and runtime module injection from installed packages to add capabilities such as lyrics and music tracking. The project incorporates a dynamic asset resolver to map external plugin resources
Fluent Bit is a cloud-native log shipper and unified telemetry collector designed as a resource-efficient data pipeline. It ingests logs, metrics, and traces from multiple sources, processing them in real-time before routing the data to external storage backends. The project functions as a real-time stream processor and OpenTelemetry log processor, capable of transforming and filtering data using SQL and conditional logic. It also acts as a distributed tracing agent that can sample traces to reduce data volume while preserving full request paths. The system provides reliable data delivery th