A Modest Proposal: jQuery Enterprise
jQuery community,
Amazing work. I can't believe how fast jQuery has developed into
the best bottom-up JS library. 1.4 looks great. But as jQuery expands
to include things like lazy loading, it might be time for a sister
project that provides important, but less commonly needed
functionality in a standard and organized way.
Essentially, I would like to start a new branch of jQuery, akin to
jQuery UI, that provides a standard set of tools and 'classes' that
enable the development of more complex applications (by no means, does
jQuery Enterprise has to be the name, just the first thing I came up
with).
The project COULD include:
- A 'standard' way of organizing files
- Compression
- Documentation
- Testing
- Code generators
- Scaffolding for easily connecting to services
- Command line plug-in installation and dependency management.
- A powerful class system (based off Resig's class)
Obviously, these are all features of my project - JavaScriptMVC. But,
I am more than willing to sacrifice the name/leadership/everything for
the ability to explore these ideas with the jQuery community.
Furthermore, it seems all JavaScriptMVC users use it with jQuery
anyway!
If you are questioning if these features are necessary, they are!
I've worked on some very large projects with hundreds of custom JS
files and multiple developers. At some point, developers need a
repeatable way of building their applications and separating
concerns. JavaScriptMVC provides that to a few lucky souls. I'd like
to help jQuery provide that to everyone.
It will also will help keep jQuery's core small and applicable to as
many projects as possible.
Here's my rough plan:
1. Get your blessing and support. Blessing being SVN access to a new
branch. Support being interest and involvement from a few
contributors.
2. Engage top jQuery contributors and users on application development
best practices. I've slowly been interviewing some JS luminaries:
http://javascriptmvc.com/blog/?cat=36.
3. Build it. I have already started to convert JavaScriptMVC to
depend on jQuery (it's in JMVC's trunk). With support, this will take
less than a month.
That being said, I'm going to skip to step #2:
jQuery community,
What would you like to see in the jQuery "Framework"?
How do you organize your applications?
What sucks about testing, compression, documentation, etc?
I can't wait to work for you!