30 open-source projects similar to hansihe/rustler, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Rustler alternative.
Rustler is a native function wrapper and foreign function interface that enables the development of high-performance extensions for the BEAM virtual machine. It serves as a bridge for writing native functions in Rust that can be called from Erlang environments. The project focuses on maintaining memory safety to prevent system crashes and memory corruption when executing compiled code. It achieves this by wrapping native calls in safe abstractions and applying Rust's ownership and borrowing rules to the management of external memory and structured data objects. The library provides mechanism
This project provides a header-only C++ wrapper for the Node-API, serving as a framework for building high-performance native addons for Node.js. It acts as a bridge between C++ and JavaScript, offering an object-oriented interface that simplifies the creation of compiled extensions while managing the complexities of the language boundary. The library distinguishes itself by providing type-safe abstractions for data marshalling and memory management, ensuring that native and script-side objects are tracked and reclaimed correctly. It includes mechanisms for coordinating asynchronous tasks bet
This project is a comprehensive technical guide and diagnostic manual for analyzing memory, performance, and asynchronous behavior within Node.js applications. It provides detailed methods for asynchronous tracing, memory diagnostics, and performance analysis to resolve runtime errors and execution bottlenecks. The resource distinguishes itself by covering advanced diagnostic workflows, including the use of flame graphs for CPU profiling, the capture and comparison of heap snapshots for memory leak detection, and the mapping of asynchronous call stacks. It also provides technical guidance on
CPython is the primary, community-maintained reference implementation of the Python programming language. It functions as a high-level, interpreted execution environment that compiles source code into platform-independent bytecode for processing by a stack-based virtual machine. The runtime manages memory through a combination of reference counting and generational cyclic garbage collection, while dynamic type dispatching determines object behavior at runtime based on metadata stored within object headers. The project is distinguished by its C-based architecture, which provides a stable forei
JerryScript is a lightweight, ECMAScript-compliant JavaScript engine and bytecode compiler designed for resource-constrained devices. It serves as an embedded interpreter and IoT scripting runtime, enabling the execution of JavaScript code within native C applications on hardware with limited memory. The project differentiates itself through a focus on low-memory runtime management, utilizing bytecode precompilation and pre-compiled state snapshots to reduce startup time and memory overhead. It features a C-binding native bridge for bidirectional communication between native code and scripts,
Goja is a JavaScript engine and ECMAScript compliant interpreter implemented entirely in Go. It serves as an embedded scripting engine that allows Go applications to execute JavaScript code and integrate a programmable scripting layer without relying on Cgo or external native dependencies. The project functions as a bridge between Go and JavaScript, enabling bidirectional data exchange and function invocation. It allows Go hosts to expose native structs, slices, and maps as JavaScript objects and arrays, while providing mechanisms to export script values and functions back into native Go type
This library provides a secure communication bridge for Android applications, enabling interaction between native Java code and web-based JavaScript interfaces within a WebView. It facilitates the invocation of native system methods from web scripts and manages the exchange of data across the language boundary. The framework utilizes a prompt-based interception layer to validate method signatures before execution, ensuring that only authorized native code is triggered. It supports complex data exchange through structured serialization and provides a mechanism for mapping native methods to web
Sol2 is a C++ Lua binding library that serves as a language interoperability layer for integrating Lua scripts into C++ applications. It acts as a scripting wrapper and API toolkit, enabling the execution of Lua code and the management of shared state within a native C++ environment. The library focuses on automated function and type mapping to bridge native C++ classes and complex data types with the Lua scripting engine. It provides mechanisms for bidirectional data exchange, allowing compiled logic and variables to be synchronized between the host application and the script runtime. The s
Positron is a data science integrated development environment and AI-powered code editor designed for polyglot development, specifically supporting Python and R. It functions as a remote compute workspace that separates the user interface from the execution kernel via SSH or container integration. The environment features a deep integration of large language models that provide context-aware suggestions and automated data analysis by accessing real-time interpreter state, in-memory objects, and plot outputs. It distinguishes itself through a polyglot runtime bridge that enables cross-language
CPython-Internals is a technical implementation guide and reference for the CPython interpreter. It provides a detailed analysis of the internal C source code and architecture, focusing on the logic that governs the interpreter's behavior. The project documents the Python object model and the compilation pipeline, tracing the process from raw grammar and abstract syntax trees to executable bytecode. It also serves as a reference for C extension development, explaining how to interface with internal data structures and use the C API. The material covers memory management, including reference
go-astilectron is a cross-platform GUI framework and binding that enables the creation of desktop software by combining a compiled Go backend with an Electron frontend. It functions as an inter-process communication bridge, utilizing an asynchronous messaging system to exchange JSON events and synchronize state between the Go process and the JavaScript user interface. The project provides a native desktop API wrapper to orchestrate system-level features from the backend. This includes the ability to manage browser windows, construct native application menus, and control system tray icons and
jni-rs is a Rust library providing bindings and interoperability tools for executing Java code and managing virtual machine instances. It enables native applications to interact with Java objects, access fields, and call methods directly across the language boundary. The library supports embedding and controlling a Java Virtual Machine instance directly inside a native application to load and run Java libraries or managed code. It also allows developers to define and export native methods written in Rust that can be called directly from Java applications and mobile runtimes. Critical runtime
flutterrustbridge is a code generation tool that automatically creates type‑safe Dart bindings for Rust functions, enabling direct cross‑language calls between Flutter and a Rust backend. It provides an async FFI adapter that transforms synchronous Rust functions into Dart async methods with background thread management, a cross‑language object manager that wraps persistent Rust structs as Dart objects preserving state across calls, and trait object interop that converts Rust traits into Dart abstract classes for seamless bidirectional use. The project handles the full lifecycle of integrat
Otto is a Go implementation of a JavaScript interpreter and embedded scripting engine. It provides a runtime environment for executing JavaScript code within native applications and includes a parser that converts source code into an abstract syntax tree for analysis and processing. The project enables the creation of custom scripting interfaces by binding native Go functions into the JavaScript global scope. It also includes a utility to translate JavaScript regular expression patterns into compatible formats for other programming languages. The engine supports safe script sandboxing throug
JSPatch is a JavaScript native bridge and method swizzler that allows for the dynamic injection of logic into a hosted native environment. It functions as a cross-language data mapper and execution engine, enabling the replacement of native function pointers with JavaScript wrappers to modify application behavior at runtime. The project provides the ability to perform runtime application patching by overriding native class methods and object properties. This allows for the modification of application logic and the application of hotfixes using JavaScript code loaded from local files or remote
This project provides Rust bindings for the TensorFlow C API, serving as a tensor computation interface and machine learning library. It enables the construction and execution of machine learning models and neural networks by bridging a systems language to high-performance backends. The framework supports GPU-accelerated computing to increase the speed of model training and inference by offloading mathematical operations to graphics processing units. It offers both graph-based computation for defining static network architectures and an eager execution mode for immediate operation calls durin
This project is a polyglot runtime bridge and interop framework designed to execute .NET and Node.js code within a single operating system process. It functions as a cross-runtime execution engine and in-process scripting host, enabling bidirectional communication and data exchange between the Common Language Runtime and JavaScript environments to eliminate cross-process communication overhead. The framework distinguishes itself by providing a system for bidirectional asynchronous callbacks and automatic data marshalling of binary buffers and serializable values between different managed obje
rinf is a cross-platform native bridge and integration layer used to connect business logic written in Rust to application frontends. It functions as a cross-language message broker and binary serialization framework that enables the exchange of structured data between a Rust backend and user interfaces across mobile, desktop, and web targets. The project utilizes a schema-driven code generator to produce language-specific message classes from shared definitions. This ensures type-safe message passing and consistency across different programming environments, preventing data mismatches during
Lvbindingrust is an embedded graphics framework and resource-efficient user interface library implemented as a Rust graphical interface library. It provides language bindings that wrap low-level C library functions to bridge underlying hardware graphics APIs, facilitating the construction of custom graphical user interfaces on resource-constrained embedded systems and microcontrollers. The project incorporates custom memory allocator routing and an internal memory manager that direct dynamic memory allocations through specialized internal graphics memory managers instead of the default syst
Polynote is a polyglot notebook environment and interactive document system designed for executing code in multiple languages within a single document. It functions as a cross-language data analysis tool and a JVM language IDE, allowing users to combine executable code, rich text, and data visualizations to prototype and document technical workflows. The system is distinguished by its ability to share data and variables between different language runtimes, such as Python and the JVM. It uses cross-language object conversion and data wrapping to pass objects between runtimes, enabling multi-la
This project is a curated study guide and knowledge base designed to assist software engineers in preparing for technical interviews within the iOS development ecosystem. It provides a structured collection of questions and answers focused on Swift and Objective-C, serving as a comprehensive reference for mastering the core concepts required for professional technical assessments. The repository distinguishes itself by bridging the gap between theoretical knowledge and practical application. It covers essential industry-standard practices, including architectural patterns, memory management s
OpenCV is a comprehensive computer vision library designed for real-time performance and cross-platform deployment. It provides a native execution environment that leverages multi-threaded operations and automated memory management to handle intensive computational tasks, including image processing and machine learning model inference. The library distinguishes itself through a data-oriented matrix framework that utilizes proxy-based array abstractions to provide a consistent interface for multidimensional data. By employing factory-pattern algorithm interfaces and runtime type dispatching, i
The Rust Programming Language Book is the official technical guide and educational resource for the Rust language. It provides a comprehensive walkthrough of the language's design, focusing on its core identity as a systems programming language that enforces memory safety and high-performance execution without the need for a garbage collector. The project is distinguished by its focus on ownership, borrowing, and lifetime tracking, which allow the compiler to verify memory safety and thread safety at compile time. It covers the language's unique approach to zero-cost abstractions, including t
pyslam is a framework for Simultaneous Localization and Mapping that combines Python flexibility with C++ performance. It is a sparse SLAM implementation designed to map environment geometry and track device location by processing image frames into 3D points. The project features a bridge for exposing high-performance C++ classes to Python scripts using zero-copy memory sharing. This integration allows for switching between a scripting interface for rapid prototyping and a compiled core for execution speed. The system includes a spatial map optimizer to refine 3D point and camera pose estima
Transit is a language-agnostic data interchange format designed for serializing complex data structures between heterogeneous software systems. It provides a standardized protocol that preserves semantic type information during the exchange process, ensuring that data remains consistent when moved across different programming environments. The format distinguishes itself by supporting multiple transport layers, including JSON and MessagePack, while utilizing a caching stream mechanism to reduce payload size by replacing repetitive keys and symbols with short integer references. It features an
Koka is a statically typed functional programming language featuring an algebraic effect system. It uses a strong type system to verify program correctness and track side effects at compile time. The language is distinguished by a reference counting compiler that transforms source code into native C code, eliminating the need for a tracing garbage collector. It employs perceive-based in-place updates to reduce memory overhead and utilizes tail recursion modulo cons for constant-space data structure construction. The system provides a comprehensive standard library covering numeric operations
xHook is a low-level instrumenter and hooking library for Android ELF binaries. It functions as a framework for intercepting native symbols and redirecting function calls by modifying the procedure linkage table. The tool utilizes regular expressions to filter specific binary files and symbols for interception. It enables the redirection of native calls toward custom function implementations without altering the original binary files. The framework covers dynamic symbol resolution, ELF table modification, and security analysis of native libraries. It also includes stability mechanisms that u
This repository serves as a comprehensive educational resource for developers building applications within the Apple software ecosystem. It provides a structured guide to the Swift programming language, offering curated examples and documentation that cover core syntax, standard development practices, and foundational programming concepts. The project focuses on practical implementation, demonstrating architectural patterns and interface designs tailored for mobile hardware. It includes guidance on managing asynchronous data flows, integrating multimedia and networking capabilities, and imple
node-opencv is a high-performance C++ native addon and bridge that connects Node.js applications to the OpenCV library. It serves as an image processing toolkit and computer vision library, allowing JavaScript code to execute vision algorithms and image manipulation operations through native bindings. The project provides specialized capabilities for face and shape detection, as well as face identity recognition using trained models. It includes tools for object motion tracking through optical flow and background subtraction, along with the ability to identify specific patterns and analyze sh
MemoryPack is a high-performance binary serialization library for C# and Unity. It provides a zero-allocation data pipeline and a schema-evolution framework designed to minimize memory allocations and encoding overhead. The project utilizes compile-time source generators to avoid runtime reflection and implements a zero-encoding binary format for maximum throughput. It distinguishes itself through a zero-allocation approach that reuses object instances to reduce garbage collection pressure and copies the memory layout of unmanaged structs directly to binary streams. The library covers binary