The tool can do what most ETL tools can do: use files or databases, transform the data and store it somewhere. The GUI to design the flows is clean and intuative. So what is different about it? You can - besides the standard row based layout - natively work with json-style data structures. The tweakflow language behind the product has functions to interact with nested structures as well as lists and dictionaries (maps). Basically functions can be used everywhere in the tool. You can use functions from the core modules or define your own ones. The core modules define functions for handling lists and dictionaries, xml or json files, mathematical or encryption functions and more.
So this gives you great flexibility: you can use the standard "steps" - I call them puzzle pieces - which give you certain functionality to design a flow, like e.g. to read from a database, to filter data or to do a HTTP request. But then if you need more flexibility or functionality that is not available out of the box, then you can define your own functions.
Here is a very basic flow which provides some data in a table format and outputs it to a "dummy" step (which basically does nothing).
The user can also define config modules for managing different environments - like e.g. development and production environment. This allows to define variables but also functions or data structures externally in a file and use them based on which environment you want to use. A typical example would be to define the details of a database connection or a folder path, as these differ for different environments. But yes, you can also define functions in the config module and use them transparently in your data flow.
Each flow can have one config module at a time. But you can change it anytime and you can of course pass it at runtime. Besides these config modules you may also define normal modules which give you the ability to re-use functionality across flows or projects. E.g. a customer specific data structure or function. These modules can easily be imported into the flow and used everywhere.
I will post more details in the near future about this clean and slick new tool. It definitely makes working with data easier because of the flexibility it gives you and the ability to work with nested data structures. Make sure you check out the homepage of Tweakstreet tweakstreet.io/ and check the documentation or go to the forum which contains challenges and tutorials.
Carpe Diem