npm link
sucks. It doesn't work in Docker and it doesn't work with a lot of projects. Symlinking JavaScript projects often makes Webpack and other build tools unable to properly resolve npm packages required by the linked project when building the parent project. Here's an alternative, albeit very primitive, solution:
chokidar /projects/my-custom-website-theme -c 'rsync -avz /projects/my-custom-website-theme /projects/website/src/themes/'
It uses Chokidar CLI and rsync
to copy all files from /projects/my-custom-website-theme to a /themes directory in a parent project whenever they change.