Git Product home page Git Product logo

solar-system-of-js's People

Contributors

shaunlebron avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

solar-system-of-js's Issues

add more controls

  • tap on right (next)
  • tap on left (previous)
  • spacebar (next)
  • swipe left (next)
  • swipe right (previous)

allow skipping animations

I think when pressing right twice (i.e. pressing right during a transition) we should skip the transition.

We can probably do this by overwriting the animation timeout, like we will do for linkable slide states

Prevent overflow of the animation channel

from: http://www.reddit.com/r/javascript/comments/32t9q6/the_solar_system_of_js/cqf7h5o

Keeps breaking for me (on latest OS X with latest Chrome) after a few slides with:
Uncaught Error: Assert failed: No more than 1024 pending puts are allowed on a single channel. >Consider using a windowed buffer.
(< (.-length puts) impl/MAX-QUEUE-SIZE)

I'm pretty sure this is the tick-tap channel. Something must be blocking it. I thought it the draw function was the only thing that would slow it down, whereas the animations are just state calculations that can presumably happen in less than 12ms.

Maybe the persistent state structure is growing too much. Will investigate

fix tick channel overload

Every requestAnimationFrame tick puts a delta time dt value on the tick-chan. And there is a mult chan that allows things like animation routines to simply tap it to be notified of frame updates.

The problem with this model is that the tick-chan can be receiving 60 values per second. On slow computers, the drawing could be slower than 60fps. So I think this can somehow block the tick-chan, causing an overload of the maximum allowed values that can be pushed onto a channel (1024).

I think a quick fix would be to just separate out the drawing logic in its own requestAnimationFrame instead of tapping into the tick-chan. The other animation routines shouldn't involve slow operations since they're just state setters.

We could keep the draw function as a tap if its receiving channel as a (sliding-buffer 1), but this would only work because the draw function doesn't care about the dt values. If the animation routines did this, it would be missing the dropped dt values when they should be accumulated.

make slides linkable

I think that in order to do this, we can just overwrite the animation timeouts to create the necessary intermediate state for the given slide. It could be a little nauseating to see the flurry of animations, so maybe we can temporarily disable drawing until the state is created.

add google closure to static-sphere

since soundscript is based on ideas from typescript, flow, and google closure; I should include Closure as the 3rd tool in the sphere, and then have soundscript as the 4th.

Closure is the optimization monster used at Google for most of their JS apps I think (need source).

They have type annotations here

Glyph not found for rocket emoji on final slide (Windows)

Windows doesn't appear to support this emoji which is used on the final slide. I'm reporting this from Windows 7 with Chrome.

I'll leave it up it to @shaunlebron to decide if this is worth the time to fix or remove. It's minor, but then again the glyph not found box is pretty ugly. It's clearly not a standard glyph or part of the Open Sans font.

add help icon tooltip

Add help icon to top right of canvas. When hovering over it, display controls:

  • arrow keys to change slides
  • shift + > to skip transitions

add conclusion slide

  • There is significant effort to fix the shortcomings and expand on JavaScript's foundation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.