Echo JS 0.11.0

<~>

tracker1 comments

tracker1 2462 days ago. link 1 point ▲ ▼
Not sure if this is even on-topic... not too much detail, and should probably list common frameworks using the different CSS tech, not spell out the frameworks themselves.

Ex: no mention that material-ui uses CSS-In-JS, or other common use cases.  It's very popular in React.
tracker1 2465 days ago. link 2 points ▲ ▼
For me, this is probably something I'd be more likely to look to as an example in bringing the functionality into my own project vs using as a separate component.  That said, the source is pretty clean and easy to comprehend.

Of note, the package.json license is MIT, but there is no LICENSE file in the project itself.
tracker1 2467 days ago. link 1 point ▲ ▼
I think you'd have a hard time describing how exactly Jest is a library and not a framework vs. Mocha in any meaningful way.  In what way is running the `jest` command meaninguly different from running the `mocha` command, with the exception that jest provides more magic in terms of wiring code coverage and parallel testing.  It does use jasmine2 for the test runner, but does so much more, and would absolutely love to hear how it is a library and not a framework.
tracker1 2467 days ago. link 1 point ▲ ▼
Suggestions...  for the worker, you don't even need to extend the class, there's no real value here.  Remove the class definition and change the exports to...

    module.exports = new ThreadWorker(yourFunction, {...})

For the pool, put the emitter on the pool itself, you can extend your initial FixedThreadPool/DynamicThreadPool with the emitter... you can add the emitter to your prototype chain or base class(es).

For the pool, instead of passing event handler options, utilize the event emitter...

    pool.on('error', error => ...);
    pool.on('ready', () => ...);

You may also want a method that returns a promise bound to your ready event...

    await pool.ready();

Otherwise, cool concept.
tracker1 2468 days ago. link 1 point ▲ ▼
Alternatively...

    const delay = ms => new Promise(resolve => setTimeout(resolve, ms));
    ...
    await delay(5000);
tracker1 2470 days ago. link 1 point ▲ ▼
Interesting app... needs a few improvements though.

* needs radio streams.
* better persistence (sqlite?)
* large local directory add, app blows up

Definitely some potential here.
tracker1 2470 days ago. link 1 point ▲ ▼
Note: this is GPL3 licensed, and you should only use this for open-source web applications that are also GPl3.
[more]