rework for npm (new to it)