The topic of today's post is changes.
The big news is the change in motivation. A startup company has taken an interest in the TradeX-chart and now funding it's development as they want to use it in their trading platform. This means the chart has to meet new standards.
This is a good thing, as I now am fixing many of the long standing issues that I was avoiding, because they were not as much fun as adding shiny new features. The feedback has been great as I am dealing with professional developers who I can discuss the technical specifics with and thus get to the root cause of issues much quicker.
Since it is a commercial project they are developing, I'm seeing how the chart is being used in real world deployments. This has been immensely valuable for battle testing the chart, as some of the issues were not apparent in a development environment and only surfaced once the chart was deployed.
One such show stopper was the source minify process which was breaking the chart. On closer inspection I discovered that rewriting of class names caused the chart to fail.
if (someInstance.constructor.name === "foo")
Instead I had to rewrite code like this as:
if (someInstance instanceof Foo)
With that change, the library now survived being minified and worked.
So far every feature that they've inquired about has been on my roadmap, so it has been good to partner up with them for their project.
Yes, TradeX remains an Open Source project. Any custom indicators developed for the startup remain propriety of course.
The other change to speak of is the chart theming. While initializing the chart with a unique theme has been a feature from the start, it is now possible to "hot swap" the theme after the chart start, which will allow for things as such as switching the chart between light and dark mode, which is a common feature in many apps today.
Themes are added to a global library, meaning that all charts on the page can utilize them.
Modifying individual settings in the theme are also possible.
The chart is available via NPM
npm install tradex-chart
and GitHub
https://github.com/tradex-app/TradeX-chart
Step by step, the chart is becoming more flexible, resilient and actually useful.