Today I would like to talk about the dashboard and a first release! I have already talked about dashboard few timer, but this week I finally dive into these charts and tables. It isn’t final look, but let’s look at what we got so far.
Everybody knows this awesome dashboards from sci-fi movies. My goal is a little bit simpler. I just want to make a dashboard that will give you a clear information about your progress, weak areas, and motivates you to further work. This means that we will need some charts! Obviously there is already library for it. Actually, there is so much of them.
I end up with Chart.js since it provides really beautiful flat design charts and it is easy to use. There is also a repository with react components for Chart.js, but I don’t need it 😀 . As I said, it is easy to use; you have to extract the values and labels from data from our IndexedDB. Then you just passed them to the chart and go through all sorts of setting and you are done.
OK, I admit I add another library. But Moment.js provides such an elegant way to format time, that I have to use it. I use Mement.js to convert timestamps into meaningful dates. This library is focusing on different time formatting and it also provides very good support for local time formatting for a wide range of countries (even Czech is here and that’s all I need 😀 ).
To be honest, I’m not that far to have a first release. But I also don’t want to wait too long with it. So, I will quickly summarize what has to be done before first release. Obviously I have to finish at least few training games, dashboard and settings page. The last thing which is important are automatic updates. Since I will not release the final version, there will be a lot of updates and I want to make sure that users will get new updates automatically. Luckily electron provides a tool called AutoUpdater for that. Hopefully it will work with GitHub releases.
Over the next few weeks I would like to implement AutoUpdater and get one step closer to the first release. After I will finish the dashboard I will start working on next training games.