298 karma · joined September 28, 2013
This is an odd statement since I know there are at least two direct competitors who are far larger.
alexa is also unrelated to broad js penetration detection.
not sure how ghostery is relevant.
the novelty of libscore is that it detects all js libs (even brand new ones with only 20 sites using it); doesn't use a dumb whitelist filter.
And, yeah, impact/change/popularity (whatever you want to call it) is certainly a main reason behind releasing and maintaining open source software. Perhaps other dominant reasons include giving users differently opionionated alternatives that better suit their workflow, advancing the technical know-how of a field, and simply experimenting for expressiveness' sake.
what's interesting about the work we've done on libscore is that it shows the end result -- whether a lib was actually ultimately used on a site. npm can tell you download stats, but that's where its data ends.
The problem was that fuzzy search would have been technically overwhelming to implement due to the size of our data sets (1 million sites * avg. # of leaked global variables). Also, it would have resulted in a lot of confusing matches because of how arbitrary JavaScript variable names are.
Keeping it to one-for-one case sensitive lookups was the only way to clearly express searching behavior and return accurate data every time. The downside is that we force people to read our homepage how-to to learn how to use it :)
Libscore isn't perfect, but it sufficiently serves its purpose of competitive analysis. I've written more about the intentions of the project, including a thorough analysis of its downsides, here: https://medium.com/@Shapiro/introducing-libscore-com-be93165...
http://css-tricks.com/myth-busting-css-animations-vs-javascr...
http://davidwalsh.name/css-js-animation
http://www.sitepoint.com/incredibly-fast-ui-animation-using-...
http://www.smashingmagazine.com/2014/09/04/animating-without...
https://developers.google.com/web/fundamentals/look-and-feel...
For what it's worth, Velocity is a fairly new library. I wouldn't have gone down the path of JavaScript-based animation had my research and testing demonstrated that it was appreciably inferior in any way.
The ramifications of this plugin are significant for front-end developers. It saves countless hours of dev time by preventing constant IDE <--> browser switching and repeated UI state reconstructing.
http://codepen.io/julianshapiro/full/oHaCy/
Useful for understanding the difference between properties and for testing out motion design concepts.
As for micro-typographic rules: You'll find that a simple way of accomplishing this is to use Blast's generateValueClass option.
Lettering.js has a slightly smaller footprint and aims to be a dead-simple "wrap spans around each letter/word in the HTML element I point you at." Accordingly, it discards your HTML then dumbly splits using spaces as delimiters. Because of this, you have to use Lettering.js in silo'd portions of your page where you don't mind losing HTML and event handlers. Further, its lack of UTF-8/multilingual text parsing means that it's only suitable for English, and only in controlled portions of your page where you already know exactly how text is written out.
Blast, in comparison, tries to be a "set it and forget it" library. Point it at anything, blast it apart, then even reverse what you've done ($el.blast(false);). You can apply it to user-generated text in real-time and not worry about a thing.
Perhaps most important, though, is that Blast.js features a sentence delimiter plus search, which Lettering.js does not.
As for a performance comparison, their demos have crashed my phone. So I have no idea. Looks like they've also pulled their demos link for now: http://famo.us. It's a pretty awesome concept though. I hope they succeed.
We've been layering on years of HTML/JS additions that aren't allowed to break backwards compatibility. (Google's Blink project is one example of an effort to try to undo some of this.)