There is Talend (<a href="https://www.talend.com/" rel="nofollow">https://www.talend.com/</a>) but it's not a library. It's a more general ETL. It requires a time to be learned.<p>I have a tool of my own which "flatten" an object to an array of pairs (for example {"a":1,"b":{"c":2}} becomes ["a":1,"b.c":2]).<p>Something like that may exists in Underscore.js.