added ionic, plus some improvements