This is a experimental thing for @DamienInman Please check out the original project for a polished and finished version