JSqldb was born from a need for a customizable and highly programmable graph database.

The first predesessor was a custom graph database, that attempted to hardcode the specific requirements of the use case for which it was needed, which was cognitive information and language mapping. It was quickly seen that a more programmable approach was needed, where different configurations can be rapidly prototyped and modified.

So was born the second predecessor, which defined a custom query language for querying and modifying the graph. As the language was being implemented using ANTLR, and requirements for more features came in, the idea to borrow syntax from JavaScript for certain parts of the language came up, for example mathematical operations and functions.

It was then realised that in fact JavaScript syntax is sufficient for ALL graph functions, and can also support general data structures, including tabular data.

The natural conclusion was to implement this using an existing high performance JavaScript engine, v8 was chosen, and so JSqldb was born as general purpose database.

Using JSqldb requires a slight mind shift from traditional databases, but is more versatile, programmable, and removes much of the tedium associated with setting up table relationships. Data can be stored in it’s natural shape, as it is required by the application, without having to transform it into various tables and retrieve it using various joins etc.