JavaScript 2017 Rising Stars
slowwaker.work
slowwaker.work
Not so long ago I had to work with graphs in javascript and none of the graph libraries I found explained the implementation details or the complexities of the algorithms.
It turned out that the implementations were ad-hoc and the time complexities were bad so I had to implement my own because they did not work for real life usage, only the example projects.
I'd rather have 1-2 options for solving a problem which are well documented and implemented properly instead of having zounds of crappy libs which don't worth a penny.
- I only use javascript if I really have to
- Most javascript libraries are so horrible that I'd rather write something from scratch than touching existing code
I donate to the Java/Kotlin ecosystem though.
The end result are piles of unmaintained libraries, with dubious quality, making quite hard to find battle tested useful libraries.
We have libraries since programming is a thing, only now we have a Github-CV-driven portfolio fashion going on, not even with Sourceforge in its golden days did it happen.
I also think that there are a lot of libraries which are experiments and don't try to fill the gap. A lot of folks write something to learn a tech and put it on GitHub to show off. This is a win-win and I don't have any problems with that.
In case of Java there is a hard barrier: putting things on Maven Central. If you pull something from there you can be sure that the author went through the hoops to be able to publish stuff there and he/she is serious about his stuff.
With Javascript the barrier is so low that npm/yarn is flooded with crap.
But to be a little more fair, I think a big part of the problem is that graphing is such a subjective problem to solve, that's why there are a million libraries - because there is no correct way to do it, and so it's all spread so thin.
... with some exceptions, for what I do, that's scientific graphing, if you want this you will find that all but two libraries are just not fit for purpose. What you will want is matplotlib - but that is python. The closest thing i've found in JavaScript is Plotly, and frankly, even from a non scientific graphing perspective I'd still choose this library, it's quite fast (for something object/D3 based) and is simultaneously comprehensive and customisable, to put a cherry on top it can also use it's JSON schema to define all aspects of a graph. - but it's not new and trendy, so it's not on the list.
Alternatively if you have nore than 10K points it's probably time to abandon DOM based methods and just redraw everything every frame directly (canvas / webgl).
> DisplayJS (...) is lightweight (100kb for the entire library)
React + React DOM is around 100kB, Vue is 86kB.
I think it's really hard to be disappointed with Vue.js. Or will hardly find anyone that is.
(That's from DisplayJS' homepage at https://display.js.org/)
/shameless self* promo :P
*as much as porting something from another language can be self promo
edit: ok technically launched dec '16 so not meet criteria, omission acceptable
diff algs for diff things