Snap.js
Snap.js copied to clipboard
Version 2.0 Roadmap
The version 2.0 Branch can be viewed here: https://github.com/jakiestfu/Snap.js/tree/v2.0
Version 2.0 of Snap.js will focus mainly on the following aspects:
- Performance
- Cross Browser Compatibility
- Plugins (Predefined Snap.js code that solves common [problems such as toggles, number of panes, responsiveness, etc).
The following issues are likely to be merged with the following release:
- [ ] #122 (@frjoha) - Scrolling causes whole page to repaint
- [x] #124 (@ryngonzalez) - Make dragging a snap-content view much more performant on mobile
- [x] #106 (@SalahStudios) - Fix issues with IE9
- [x] #98 (@jaketrent) - Fix canTransform check in IE8
- [x] #80 (@jamuhl) - added option to disable drag on mouse events
- [x] Remove 'animating' event, wicked sloppy, non performant
In addition, the following goals will attempt to be met:
- Light Plugin Support
- Plugin: Responsive triggering (disable/enable Snap.js only on certain screen sizes)
- Plugin: Data-attribute togglers for open and closing panes
- Plugin: Plug and play, load data to drawers with ajax easily
- jQuery/Zepto Support
- Unit Tests
simply ... Gr8!!! ; )
Yeah good work, this thing has really taken off since day 1, thanks
That's a pretty awesome list of updates!
@jakiestfu Would you be up for getting semver tags on this repo just before + after the v2.0 branch gets merged in? The bower folks would be eternally grateful :)
@jtrussell If you'll excuse my naivety, I'd include semver tags if only I knew what they were. Care to explain? ;P
@jakiestfu Absolutely.
Semver is short for semantic versioning - there's a pretty short but informative spec here but at a high level it's a versioning scheme that lets the third parties which depend on your package know when things change that they'll have care/worry about. So whenever you publish new changes and update the version number we can compare the new version to the old and know:
- Major version bump --> changes break backward compatibility
- Minor version bump --> changes add new features
- Path bump --> changes fix a bug issue but don't alter public facing api
Bower (and other package managers) key in on your package's published versions when resolving dependencies. "Adding semver tags" just means git tag
ing your repo to match its package version. For example angular-snap has Snap.js as a dependency - and here's a snapshot of its tagged versions:
I'd like to be able to tell bower that e.g. version 1.0.0
of angular-snap is compatible with all versions of Snap.js that match 1.x
but it requires that the Snap.js repo actually be git tag
ed to expose those version numbers.
Hope that helps - also, I don't believe there's a way non-committers can tag a repo (i.e. it's not something one could send a pull request for).
Compatibility with The Bootstrap framework would be awesome too.
I'm testing some new layouts at the moment to see if I can avoid the repaint issues so if I find a way I'll post here. I'm sure there must be a css solution to that.
I'll happily test any alpha/beta versions, give give me shout.
Good luck and thanks!
I was experiencing the same problems and while testing I found out the following lines cause massive impact on the performance in fps. https://github.com/jakiestfu/Snap.js/blob/v2.0/snap.js#L207;L209;
cache.animatingInterval = setInterval(function() {
utils.dispatchEvent('animating');
}, 1);
Although I'm not sure what it exactly does but it's called well over 2000 times. I have to point out there are still repaints of the entire page, I'm still searching what might cause this.
How can I access version 2? When I switch branches the files are 3 months old....
so hm.. is there any eta on snap.js v2? ><'
To echo @lesander any plans to supporting Bootstrap 3.0 as well? (http://getbootstrap.com/)
@jakiestfu any estimation on when this version will be released?
@jakiestfu I have a request, can atleast some of the finished issues be released since its been a while...