I've a credit card applicatoin that allows customers build things in JS. I would like the consumer to have the ability to save the present condition of his try to reuse it or share it, but what he's is an accumulation of JS objects saved inside a JS array, with completely different qualities (color, label, x/y position, size, etc.).

SQL appears terrible for your particular task, forcing me to keep tables for each different object, and alas I understand hardly any about NoSQL database. What tools can you use to do this ? MongoDB sounds promising before I learn another DB paradigm I would like to be certain that i'm heading within the right direction.

For those who have no curiosity about quering the objects for his or her various qualities only persist these to save condition, you are able to serialize the whole array to JSON and store it in almost any db you want as you string.

Resist string:

You are able to store your objects within the DB like a JSON string. Here is a simple example:

var foo = new Object();
foo.Name = "James";
foo.Gender = "Male";

//Result: {"Name":"James","Gender":"Male"}
var stringRepresentation = window.JSON.stringify(foo);

Here's a working fiddle.

String to object:

To transform your string to an item, simply call window.JSON.parse():

var myObject = window.JSON.parse(stringRepresentation);

Here's a working fiddle.

What's around the server?

Most languages have mature JSON implementations that convert JavaScript objects to native types, which you'll then easily store inside a SQL database.