An Erlang wrapper for libmacaroons, a library which provides an implementation of macaroons. Macaroons are flexible authorization tokens that work great in distributed systems. Like cookies, macaroons are bearer tokens that enable applications to ascertain whether their holders' actions are authorized. But macaroons are better than cookies!


A C++11 wrapper for libmacaroons.

Erlang TLS

Created as a part of my employment (© ACC Cyfronet AGH), Erlang TLS is an alternative implementation of IP and TLS layers available in Erlang distribution.

Erlang TLS is a C++ extension for Erlang, written to take full advantage of hardware acceleration of AES encryption. The implementation achieves up to 8 times higher bandwidth than Erlang's gen_ssl-based stack on a single core, and scales well with multiple cores.

README and documentation coming soon!

Razer DeathAdder Chroma driver for razercfg

A low-level hardware access for the Razer DeathAdder Chroma mouse built on libusb. The driver was created for (and is merged into) razercfg, an open source Razer device configuration tool for Linux.

TCP/IPv6 stack

An implementation of TCP/IPv6 stack intended to be portable between different hardware and operating systems by implementing a set of low-level functions. An implementation for x86 Linux-based platform is provided as an example.

The stack was created as an academic research project. It doesn't implement the whole TCP/IPv6 specification - particularly no optional IPv6 headers are supported - and the TCPv6 implementation is incomplete (although functional). The code is not intended for production use.


Dice library is a small, high-performant, thread-safe, idiomatic and unit-tested implementation of gaming dice written in C++11.