I'd like to add to the answer my view on these dependencies explanations
dependencies
are used for direct usage in your codebase, things that usually end up in the production code, or chunks of codedevDependencies
are used for the build process, tools that help you manage how the end code will end up, third party test modules, (ex. webpack stuff)