Projects
These are the projects that I’ve created and currently work on:
- Cathode: A terminal-centric replacement for the .NET console APIs.
- libap: A port of LLVM’s arbitrary-precision numerics types to Zig with a C API.
- libffi: A friendly libffi fork with a Zig build script and bindings.
- libmc: A library plus utility programs for working with machine code and object formats.
- Novadrop: A developer toolkit for interacting with and modifying the TERA game client.
- Ruptura: A Windows DLL injection, function interception, and memory manipulation library for .NET.
- Zig SDK: An MSBuild SDK for building Zig, C, and C++ projects using the Zig compiler.
- Zig Toolsets: The Zig compiler and standard library packaged for use in MSBuild.
I have created the following projects in the past, but I no longer maintain them:
- Alkahest: An extensible TERA proxy server.
- Atomique: Sane atomic operations for .NET based on the C++11 memory model.
- Augmentrex: A reverse engineering tool for the Steam version of Hellgate: London.
- Celerity: An expressive programming language for writing concurrent and maintainable software.
- ExMake: A modern, scriptable, dependency-based build tool similar to Make.
- ExParsec: A parser combinator library inspired by Parsec.
- Oninaki Reincarnation: A combat and post-game overhaul mod for the Steam version of Oninaki.
- SDB: Command line interface to the Mono soft debugger.
- Satori: Libraries and tools for the Epiphany processor architecture.
- TERA Arise: A game resurrection project for the final build of TERA EU.
I’ve contributed substantially to many other projects:
- .NET for Android: Provides open source bindings of the Android SDK for use with .NET managed languages such as C#.
- .NET for Apple: Provides open source bindings of the Apple SDKs for use with .NET managed languages such as C#.
- .NET Runtime: A cross-platform runtime for cloud, mobile, desktop, and IoT apps.
- Binary Ninja API: Public API, examples, documentation, and issues for Binary Ninja.
- ClangSharp: Clang bindings for .NET written in C#.
- DMD: The reference compiler and runtime library for the D programming language.
- dnlib: Reads and writes .NET assemblies and modules.
- DocFX: Static site generator for .NET API documentation.
- Draco: The Draco programming language compiler.
- Elixir: A dynamic, functional language for building scalable and maintainable applications.
- gpr: A .NET Core tool for working with the GitHub Package Registry.
- Homebrew: The missing package manager for macOS (or Linux).
- LDC: The LLVM-based D compiler.
- LLVM: A collection of modular and reusable compiler and toolchain technologies.
- LuaD: Bridge to Lua from the D programming language.
- Meson: The Meson build system.
- Micro: A modern and intuitive terminal-based text editor.
- Mono: Open source C#, CLI, and .NET implementation.
- Mono.Posix: POSIX/Unix interface for Mono, .NET and .NET Core.
- MonoDevelop: A cross-platform .NET IDE.
- musl: An implementation of the standard library for Linux-based systems.
- Nerdbank.GitVersioning: Stamps assemblies with Semantic Versioning 2.0.0-compliant version information derived from Git commit height.
- Orleans: A cross-platform framework for building distributed .NET applications.
- Pegged: A Parsing Expression Grammar (PEG) module, using the D programming language.
- PeNet: Portable Executable (PE) library written in .NET.
- Phobos: The standard library of the D programming language.
- Silk.NET: One-stop-shop for high-speed .NET multimedia, graphics, and compute.
- Spdx: A .NET library that makes it easy to retrieve information about SPDX licenses.
- VapourSynth: A video processing framework with simplicity in mind.
- VS Code Zig: Zig language support for VS Code.
- Waf: A Python-based framework for configuring, compiling and installing applications
- Wcwidth: A .NET library that calculates the width of Unicode characters.
- WebMarkupMin: A set of markup minifiers for .NET.
- Zig: General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
And probably others that I’ve forgotten…