ready for npm usage