Projects

A selection of open-source projects I've put online over the years. Some are still maintained; others are archived but kept here for reference.

  • PdfiumViewer archived

    PdfiumViewer wraps Google’s PDFium library for use from .NET, providing rendering, printing, and an embeddable viewer control for Windows Forms and WPF applications.

  • PdfiumBuild archived

    PdfiumBuild automates the build of Google’s PDFium library into the native binaries that PdfiumViewer (and other consumers) depend on, so the native side stays reproducible instead of relying on whatever upstream happens to publish.

  • Expressions archived

    Expressions is a .NET library for parsing and evaluating expressions at runtime — handy for scenarios where you want to let users supply expressions to an application without writing a parser yourself.

  • Google Wave Notifier archived

    When Google Wave came out, the one missing piece was a desktop notification tool. Google Wave Notifier filled that gap and, at its peak, had over a thousand active users. It bundled a reverse-engineered implementation of the Google Wave client protocol and a full automatic-update system.

  • Google Wave Client–Server Protocol archived

    As part of building Google Wave Notifier, I reverse-engineered the client–server protocol Google Wave used to communicate with the browser. This project is the documentation of that effort.

  • Windows Tail

    A small C# utility that mirrors tail -f on Windows: open a file and watch new content stream in, optionally filtered through regular expressions.

  • TrayRun

    TrayRun launches an application minimized to the Windows system tray rather than the taskbar — convenient for “run at startup” programs that would otherwise clutter the taskbar.