Epic tools the world needed
Requirements: Java8+ and SLF4J-API. No other dependencies by-design.
Extensively Unit-Tested with JUnit 5.
FilenameSanitizer performs the sanitization of a filename in order to make it safe to be used for a file creation on every modern File System.
Unallowed chars are replaced with a safe token (an underscore) according to every modern File System naming convention.
WordsCapitalizer performs the full capitalization of a String in the right way (lowering when needed, taking into account Locales and Surrogate Pairs) and also allowing the user to specify custom delimiters and get complex behaviours. Perfect when handling last names, street names, etc.