4 ms·
Microjs: an index of javascript micro frameworks
- z0ot 15y agoWow this is cool. I will definitely use some of those at work ;) thanks!
- latch 15y agoI started using zepto recently, it's at 7.4k min+gziped, not the 3.3 listed on this site. Still a super useful site, it might just be slightly out of date.
- madrobby 15y agoI'm the author of both MicroJS and Zepto. The sizes are automatically generated from GitHub when I deploy, usually a couple times per week. Zepto's size includes only the core library, not additions like Ajax, Touch and so on, that's where the 3.3k number is coming from.
- deleted 15y ago[deleted]
- martindale 15y agoIs the purpose of this site to highlight how easy it is to build your own framework to suit your needs?
- ramanujam 15y agoIt has now become a norm that everyone just drops in jQuery and bootstrap css for most of their projects while they might just be needing a DOM handler and a few utility functions. I have nothing against jQuery or Bootstrap. They are awesome to get things rolling but in most cases there is no necessity to load huge JS libraries with lots of utility functions which one might not be using. Not to leave aside the fact that a few third party analytics, tracking, help desk tools also load/include jQuery in their bloated script. MicroJS is a good resource. I am wondering how many of the frameworks listed there are actively developed/maintained. Adding the last commit date information might be super useful.
- derefr 15y ago> there is no necessity to load huge JS libraries with lots of utility functions which one might not be using. I think we really need to see a tracing link-time-optimizer for Javascript code that can be run as part of an asset pipeline. Dump in your huge JS library, run your client scripts (with a thorough test suite) to detect what functions of the big library are or aren't called, then cull off the functions that aren't when writing out the final "compiled-and-linked" client library.
- firefoxman1 15y agoThat's a really good idea. In the meantime you could use jquip which cuts out a lot of the commonly-unused jQ stuff. https://github.com/mythz/jquip https://github.com/mythz/jquip
- revorad 15y agoUnless the optimizer made sure that it didn't inadvertently break any cross-browser compatibility, you would lose one of the biggest benefits of libraries like jQuery.
- derefr 15y agoRight; I imagine library authors would have to adopt some sort of conventional annotation on functions declaring something like "if you execute any function in the set {X,Y,Z}, you have to include all of {X,Y,Z}, because they're cross-platform equivalents for one-another."
- edwinnathaniel 15y agoGWT solves this problem a few years ago.
- chi_h 15y agoGoogle Closure and GWT both do exactly that - they use static analysis to cull code which never gets called. You can't use them with standard JS libs though - JS code needs to be specially marked up to use that feature in Closure, and GWT development is in Java. GWT takes the idea one step further - the code splitting functionality lets you define split points, and code that only ever gets called behind the split point does not need to be downloaded on page load, but can instead be downloaded when that split point is first reached.
- 97s 15y agoThanks for this. Bookmarked so that I can use it for future reference. I am going to try out some of those one page .js frameworks soon.
- handzhiev 15y agoGreat. Some kind of categorization or tagging would be really useful too.
- fuzzythinker 15y agoSince the list is so long, an "about" link on top of the page to link to the bottom would be helpful (eg. I want to find out what constitues as a "micro" framework - currently it's 5k).
- sad_panda 15y agoIt would be nice if I could use a minifying compiler that would strip what I don't use from JQuery, without having to also organize my JS source in a compileable form.
- wahnfrieden 15y agoDoes Dojo count now with their latest release? They're supposed to have a "micro kernel" that's something like 3kb now.
- mhansen 15y agoYour HTTP headers alone per requested file is probably 1KB - 3KB is still tiny.
- AlexeyMK 15y agoVery cool! I'd very much like to be able to sort by popularity, so when I'm trying to find an off-the-shelf library for something I have a general sense of what has support in the community. I've put together a pull request which aims to accomplish this goal at https://github.com/madrobby/microjs.com/pull/232 https://github.com/madrobby/microjs.com/pull/232.
- elchief 15y agoI wonder if it's faster to learn 400 new APIs, or just use ExtJS or Dojo?