30 open-source projects similar to webassembly/wasi-sdk, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
This project is a game decompilation project consisting of a reconstructed C source codebase and the systems used for binary reconstruction. It provides a human-readable version of a commercial game title created through static and dynamic analysis to facilitate technical study and modification. The project utilizes a containerized build environment to ensure reproducible compilation and consistent toolchain versions across different host operating systems. It includes a game binary reconstructor that translates original machine code into source code and a system for compiling the codebase in
Earthly is a containerized build system and Docker build framework designed for creating reproducible build pipelines. It ensures environment consistency by executing every build step inside an isolated container, combining the isolation of container images with dependency tracking and parallel execution. The system differentiates itself through a focus on hermeticity and multiplatform support, allowing for the generation of container images targeting multiple CPU architectures within a single execution flow. It maintains a hermetic build environment by isolating network access and utilizing
Wasm3 is a WebAssembly interpreter designed for embedded runtime integration. It enables the execution of portable binary logic on microcontrollers and resource-constrained hardware, providing support for modules that utilize the WebAssembly System Interface to interact with system resources. The runtime employs register-based bytecode interpretation and direct-threaded dispatch to map virtual registers to physical CPU registers. It includes a host-call interface to map imports to C functions and utilizes static module validation to ensure bytecode follows specification rules before execution
Cross is a container-based build environment and cross-compilation tool for Rust. It functions as a multi-architecture binary builder and testing framework, allowing users to compile crates into binaries for different operating systems and CPU architectures without installing local toolchains on the host system. The project distinguishes itself by using Docker images to provide consistent toolchains and system dependencies for foreign target architectures. It integrates the Zig toolchain within container images to facilitate compilation across various architectures and library versions, and i
Blade-build is a multi-language build system and software orchestrator designed to automate the compilation, linking, and testing of complex codebases. It functions as an incremental build engine that models project structures as directed acyclic graphs, ensuring that only affected modules are recompiled when source code or header files change. By utilizing declarative build specifications, the system provides a unified approach to managing dependencies and toolchains across diverse programming environments. The system distinguishes itself through a focus on hermetic build environments and re
Cake is a cross-platform build automation system and scripting framework that allows users to define software build pipelines using C# scripts. It functions as a CI/CD pipeline orchestrator and build runner, providing a strongly-typed domain-specific language to simplify the orchestration of compilation, testing, and packaging processes across Windows, Linux, and macOS. The system ensures reproducible build environments by pinning the versions of build tools, modules, and dependencies. It distinguishes itself by enabling a C# scripting workflow with full IDE support, including autocomplete, s
This project is a cross-platform credential management suite designed to store sensitive information in encrypted local databases. It functions as a secure desktop application that provides a unified environment for organizing secrets, generating passwords, and managing multi-factor authentication tokens. By utilizing industry-standard file formats, the application ensures that stored credentials remain secure and interoperable across different operating systems. The software distinguishes itself through deep integration with hardware-backed security and system-level services. It supports phy
The project is a reusable collection of modular compiler and toolchain technologies designed for building optimizers, code generators, and multi-language programming environments. It provides foundational compiler frontend technologies that translate source code written in C, C++, and Objective-C into a low-level programming language and intermediate code format. This intermediate representation enables cross-language analysis, program transformation, and target-independent optimization alongside a cross-platform programming framework that allows developers to write single-source accelerated a
IREE is an MLIR-based compiler toolchain and runtime designed to translate machine learning models from various frameworks into optimized binaries for execution across diverse hardware targets. It provides a unified pipeline to ingest models from PyTorch, TensorFlow, JAX, and ONNX, lowering them into a common intermediate representation for deployment on CPUs, GPUs, and bare-metal embedded systems. The project distinguishes itself through a bytecode virtual machine and a hardware abstraction layer that decouple high-level model logic from specific hardware instruction sets. It supports sophis
MSYS2 is a software distribution that provides a MinGW development environment, a Bash shell, and a Unix-to-Windows compatibility layer on Windows. It centers around the Pacman package manager for installing and managing software dependencies and provides C++ toolchains for creating native software for x86_64 and ARM64 architectures. The project distinguishes itself by providing a comprehensive compatibility layer that translates Unix paths and process arguments for use on Windows. It enables the emulation of a native Linux build environment, allowing users to compile native Windows executabl
The project is a development kit and compilation toolchain that builds C and C++ source files into native machine code libraries and shared library packages for mobile execution. It integrates target architecture toolchains with standard build systems to transform source code into deployable native modules. The toolset includes debugging and profiling capabilities that bridge low-level system debuggers with compiled binaries to inspect runtime execution states, register contents, and memory layouts. It provides performance monitoring instrumentation to measure execution bottlenecks and resour
Buck is a multi-language build system and modular build orchestrator designed to compile and package software modules across different programming languages and hardware platforms. It functions as a hermetic build tool, isolating the build process from the host system to ensure consistent and reproducible outputs. The system manages polyglot software builds by organizing code into small, independent units to facilitate faster compilation. It operates as a cross-platform package manager that creates and distributes software components across various operating systems and language ecosystems.
Wasmtime is a WebAssembly runtime and sandboxed bytecode executor designed to run WebAssembly bytecode on a host system. It functions as an embeddable engine that integrates into applications through native APIs and language-specific bindings, as well as a standalone execution environment accessible via a command line interface. It is a WASI compatible runtime, implementing the WebAssembly System Interface to provide portable access to system resources. The engine utilizes a JIT compilation model to translate intermediate representation into optimized machine code for various CPU architecture
This project is a C++ Standard Library implementation that provides the foundational classes and functions required by the ISO C++ standard. It serves as a template-based generic programming library, providing the Standard Template Library's set of containers, algorithms, and iterators for data manipulation. The library is a core component of the MSVC toolchain, designed specifically for integration with the Microsoft Visual C++ compiler and build tools. The implementation covers memory management through optimized allocators and buffer strategies, as well as tools for performance benchmarki
The WebAssembly Binary Toolkit is a suite of tools for inspecting, validating, and transforming WebAssembly modules between binary and human-readable representations. It includes a stack-based interpreter for executing modules and a transpiler that converts binary files into C source code and headers. The toolkit provides utilities for assembling human-readable text into binary modules and disassembling binary files back into text. It features a text formatter for normalizing definitions into a canonical flat representation and supports the conversion of binaries into S-expression formats. T
Nix is a functional package manager, purely functional build system, and declarative configuration system. It serves as a reproducible environment manager designed to eliminate manual installation drift by defining software and operating system states through a configuration language. The project provides a means of managing software dependencies in isolated environments to prevent conflicts between different versions of the same tool. It enables the creation of consistent system configurations and development environments that replicate exactly across multiple machines. Its capabilities cov
XenonRecomp is a static binary translator and Xbox 360 game recompiler. It functions as a binary analysis tool and native code generator that converts machine instructions from Xbox 360 game executables into C++ source code for recompilation on different hardware platforms. The tool features specialized capabilities for translating compiled binaries, including the conversion of assembly jump tables into native switch cases and the detection of function boundaries using stack space data and branch link instructions. It optimizes translated code by converting non-volatile and non-argument regis
This project provides a functional package manager and a reproducible build system designed to ensure identical build inputs always produce the same outputs. It serves as the foundation for a declarative Linux distribution where the entire system state is defined in a configuration file, enabling predictable deployments and full-system rollbacks. The system uses a deterministic functional language and a lazy-evaluation expression engine to manage software dependencies and isolate build environments. It distinguishes itself through a content-addressable store that allows multiple versions of s
This project is a source-based package management framework designed to build, maintain, and distribute software for a Linux operating system. It provides a comprehensive infrastructure for transforming source code into reproducible binary packages, utilizing modular shell-script templates to manage the entire lifecycle of fetching, patching, configuring, and compiling software. The system distinguishes itself through its focus on isolated build environments and cross-compilation capabilities. By utilizing dedicated master directories and specialized toolchains, it ensures that builds remain
Buck2 is a programmable monorepo build tool and hermetic build system designed to manage large-scale projects with complex target graphs and multi-language dependencies. It functions as a remote execution framework and dependency graph analyzer, providing an artifact caching engine to ensure reproducible and consistent build results across different environments. The system distinguishes itself through an incremental computation engine that recomputes only the specific nodes in a dependency graph invalidated by changes. It utilizes content-addressable storage for build artifact caching and su
Walt is a transpiler and typed language that converts a JavaScript-like syntax into WebAssembly binary format. It functions as a toolchain for developing high-performance logic for browsers and runtimes by translating typed source code into WebAssembly text format. The project includes a bundler-integrated loader that automates the recompilation of source files during the build process. It provides a linear memory manager used to define custom data layouts, structs, and memory allocators within a contiguous heap. The language supports defined function signatures, numeric types, and the abili
This project is a command line package manager and dependency management engine used for installing, updating, and removing software packages across different operating systems. It functions as a package recipe system and software repository administrator, utilizing declarative scripts to define software sources, build arguments, and installation steps. The system operates as a binary distribution platform that compiles source code into pre-compiled binaries and distributes them through remote repositories. It includes an automated version tracker that monitors upstream software releases and
This project is a Linux game distribution client, digital game storefront, and gaming runtime. It provides a desktop interface for discovering, purchasing, downloading, and launching digital video games on Linux operating systems. The software implements a translation layer that converts Windows API calls into Linux system calls to enable the execution of non-native binaries. It utilizes a container-based runtime environment and kernel namespaces to ensure binary and dependency compatibility across diverse Linux distributions. The system includes a display manager that abstracts the interfac
Porffor is an ahead-of-time compiler that converts JavaScript and TypeScript source code into native machine code or C binaries. It functions as a native binary generator and transpiler, producing standalone executable files that do not require a runtime or virtual machine. The project translates source code into C language files and WebAssembly binary formats. It includes a direct-to-binary pipeline for TypeScript, allowing for the generation of target executables without a separate transpilation step to JavaScript. The toolset also includes an interactive read-eval-print loop for real-time
Box64 is a cross-architecture runtime and user-mode emulation layer that allows Linux and Windows software to run on non-native hardware. It functions as an x86-64 instruction emulator and binary translator, executing 64-bit binaries on different CPU architectures by translating machine code into native instructions. The project utilizes dynamic recompilation to accelerate execution and maps guest system calls to native host libraries to increase speed and hardware compatibility. It can simulate a 32-bit execution environment to support legacy software and integrates with the operating system
This project is a collection of best practices and curated templates for building secure, stable, and production-ready Docker images. It provides standards for OCI image optimization and a guide for implementing industry-standard configurations in container environments. The repository offers specific patterns for security hardening, such as implementing non-root user execution with static IDs to prevent host privilege escalation. It also provides structural templates for multi-stage builds to separate build-time dependencies from the final runtime environment. Additional capabilities cover
Ish is a Linux shell emulator for iOS that provides a local terminal environment for running shell commands and managing files. It functions as an instruction-level emulator that enables the execution of Linux binaries on mobile devices by simulating an Alpine Linux environment. The project distinguishes itself by combining user-mode Linux emulation with a virtual root filesystem. This allows the software to map Linux kernel system calls to host functions and execute scripts and toolsets directly on an iPhone or iPad. The emulator also provides low-level program debugging capabilities, inclu
OpenClash is a network traffic controller designed for embedded router hardware. It functions as a kernel-level traffic management solution that intercepts network packets to enforce user-defined routing policies and connectivity rules across home or office network environments. The project distinguishes itself through a comprehensive build and deployment pipeline tailored for diverse firmware architectures. It provides a cross-compilation environment that transforms source code into hardware-specific installation files, while also offering a package management system to handle the retrieval
Defold is a cross-platform game engine and integrated development environment used to create 2D and 3D games for desktop, mobile, and web targets. It combines a game development IDE for asset and scene management with a multi-platform build system and a scripting environment based on Lua. The engine includes a specialized headless runtime for hosting game servers and performing automated testing without a graphical interface. It supports native engine extensions, allowing custom low-level code to be integrated into the core to expand functionality beyond the standard scripting interface. The
FFmpeg-Builds is a cross-platform compilation toolchain and custom build system designed to generate static executables of the FFmpeg multimedia framework. It provides a distribution of pre-compiled binaries for multiple operating systems and hardware architectures. The project utilizes a Docker-based build environment to isolate toolchains and dependencies. This containerized approach enables multi-architecture cross-compilation and allows for parameter-driven feature selection to include specific codecs, libraries, and license options in the final binaries. The system manages the entire wo