add an npm-like UI