I try to find files with
find ./ -regex '\.((?\!node_modules).)*\.js'
find ./ -path *node_modules -prune -o -name *.js
You can't do it at the moment.
GNU Find supports several regex types, but none of them supports zero width assertions.
-regextype type Changes the regular expression syntax understood by -regex and -iregex tests which occur later on the command line. Currently-implemented types are emacs (this is the default), > posix-awk, posix-basic, posix- egrep and posix-extended.
For your task you need the lookbehind assertion, and it is not supported yet.
Another option for you is to use find2perl that converts a find expression to a perl program, that makes the same what the expression makes.
You could use this program to check if your expression will work with PCRE and look-ahead/look-behind assertions.