Developer experience leadership
Making complex platforms usable for developers.
I work across native APIs, language bindings, game-engine integrations, documentation, and communities so developers in different stacks can build on complex systems.
My work spans libVLC’s C API and bindings in multiple languages, C++ and C# work on VLC for Unity, and Rust-to-C# integrations around Kyber and Servo. VLCLR extends that work into native VLC plugins and local AI.
Selected experience
The developer path, from engine to application.
A C API, many languages
libVLC is a C API. I have contributed to it and to bindings in different languages. I created LibVLCSharp in 2018 and administer VideoLAN’s NuGet account: 22 packages with 7M+ downloads, covering native builds per platform and managed integrations for a dozen UI toolkits.
Native systems in Unity
VLC for Unity spans C++ and C#, on Windows, macOS, Linux, iOS, Android, and UWP. Kyber for Unity connects Rust and C#. LibVLCSharp.MonoGame brings the same GPU-accelerated playback to MonoGame.
Rust to C#
KyberSharp brings Kyber’s Rust SDK into C#. I also co-built ServoFocus for Mozilla, a Xamarin.Forms prototype connecting C# to the Rust-based Servo browser engine.
Native plugins & local AI
VLCLR is my active, experimental framework for writing native VLC 4 plugins in C# with Native AOT. Its examples use local AI for object detection and translation.
Current project · VLCLR
A C# path into native VLC plugins.
VLCLR is an experimental framework for authoring VLC 4 plugins in C# and publishing them as Native AOT libraries that VLC loads directly. I am building it around the work a plugin author should be able to focus on: the video, text, or audio feature itself.
Explore VLCLRThe developer experience
Attribute-based modules and a source generator handle native exports, callbacks, configuration, and plugin lifecycle. Base classes and ABI wrappers cover video, subtitles, audio, player, and playlist integrations.
Local AI in working examples
Runnable samples show YOLOX object detection in video, offline subtitle translation, and live speech translation.
VLCLR is experimental and currently targets Windows x64.
Browse source and samplesPeople & community
A community across stacks.
I created the LibVLC community Discord to connect users and bindings maintainers across programming languages. It has grown to 1,500+ members working across 10+ technical stacks.
I was a Google Summer of Code mentor in 2021 and 2026.
I also share what I learn through technical writing, a 200-page ebook on LibVLC, and talks in Canada, Europe, and Asia, so developers can understand the choices behind an API or integration.
How I work
Make the first integration work—and keep it working.
Good developer experience connects API design with packages, examples, documentation, release practices, and the feedback developers bring back from real applications.


