You should always start small. When your codebase becomes huge, you can push out some parts into separate stand-alone dependencies but again if there is a reason. You can use npm to work with local files and repos also. Companies usually have some kind of libraries they use in all projects.
Imagine it like a Bootstrap and many of your projects where each of them uses Bootstrap. You don't need to write buttons, carousels, dropdowns all the time, you just pull components you need and ready to go. When something changed in a dropdown, for example, you can automatically update all your projects instantly.
Here is a good talk:
But again, don't overcomplicate things until it is really needed and never push out each small module into another small package. Create a library of modules instead.