I personally like kebab-case: https://wiki.c2.com/?KebabCase kebab-case is by far the most common convention today. The only use of underscores is for internal node packages, and this is simply a convention from the early days. https://docs.npmjs.com/files/package.json#name for Node - Node Starter https://github.com/rickyrauch/nodejs-starter From google: https://google.github.io/styleguide/jsguide.html#file-name From airbnb: https://github.com/airbnb/javascript#naming-conventions