A little while ago Unity introduced its Package Manager, a nice and simple way to bring reusable packages into a project while keeping track of dependencies and compatible Unity versions.
Read more here.
https://medium.com/@markushofer/run-your-own-unity-package-server-b4fe9995704e