Any can use the software only for purposes in line with ml5.js values.
So everyone is free to use the software, just not for all the purposes that any particular person might choose. It's something like a bar with a "no racist language" sign: anyone can use the bar, they just have to abide by the rules, and if they chose not to, they can find another bar.
There are 2 caveats to that:
1. they can change their values at any time
2. they can decide at their sole discretion that your use isn't in line with their values, and you have no recourse.
> It's something like a bar with a "no racist language" sign: anyone can use the bar
The difference is that one wouldn't use the bar as a platform to build a business on, whereas one might build a business on software.
Can a weapon manufacturing company use ml5.js ?
Hitler literally saved puppies. He was a forerunner of animal rights. I don't know about the relationship between Trump and puppies but real people are more nuanced than a D&D alignment chart, and even despicable people can do good.
The rest of your reply disagrees with your first sentence. It seems that only the people who share ml5.js values are allowed to use the software. There's no problem with that, but they should be clear about it. They should also state clearly that ml5.js is not free or open source software, as its license violates the first principle of Free Software:
> The freedom to run the program as you wish, for any purpose (freedom 0).
And the similar principle in the OSI definition of Open Source
> No discrimination against fields of endeavor: The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.