working; requires manual npm install