The Official MooTools Plugins Repository Is Here!
Written By Guillermo Rauch, on Thursday, December 10th 2009, 6:33amIf I was to highlight the single most important thing for MooTools in 2009, I would say without a doubt it’s been its community. This year has seen the involvement of many individuals from all over the world that have contributed their time, expertise, talent and charm. Our San Francisco & London hackathons are clear confirmation of this.
Today we’re introducing a tool that has been in the works for the past few months that we believe will change how our community collaborates forever. Meet the MooTools Forge.
The Problem
As a framework, you probably expect MooTools to be compact and provide you with the tools that solve most of your JavaScript problems easily and elegantly and that’s been our goal all along. But for all the other specific needs that your projects have, no matter what framework, you’ve probably found yourself googling for plugins or snippets before. No one wants to reinvent the wheel.
That Google search will probably return thousands and thousands of results. Many people have even approached the same problem in many different ways (try searching for a mootools slideshow plugin!). This distributed model, although relatively effective, represents problems for both users and developers.
For the users, it becomes hard to establish comparisons between the plugins as every developer will represent them differently on their websites. Sometimes it’s hard to find a demo, sometimes you just don’t know how to use the thing. Other times the website will be offline for a couple hours, or maybe you don’t know on what other components the plugin might depends to function.
But can we blame developers? Creating a plugin that you can distribute to people takes work. And for some of us, experience shows that writing documentation, uploading it to our cumbersome blog systems, preparing screenshots (and then upgrading them upon a new release!) can sometimes be even more difficult than writing the plugin itself. Still, there are some good reasons to consider releasing your code.
The Solution: for users
For people trying to find plugins, we wanted a simple interface with visual focus on what’s available. Going through lists of plugins whose names are not always that intuitive or descriptive is both boring and inefficient. You might find yourself opening dozens of tabs just to see what the plugin can potentially offer. We want to try and put all the information you need to make a choice right in one place.
While each plugin can have tags that you can browse, we also came up with a concise list of categories that group the most recurrent functions: Effects, Forms, Interface, Media, Native, Realtime, Request, Utilities, Widgets.
For plugins themselves, we wanted to make three basic tasks easy: seeing a demo, downloading, learning how to use. This is the result:
We believe it’s important as well to know who is behind the scenes. To see who is that guy or girl that spent the time to create that amazing piece of functionality that impressed your clients or boosted your website usability. As such, the MooTools Plugins repository comes with simple to tools support to allow you to stay in touch.
The solution: for developers
We’re very proud of how straightforward and efficient we’ve made it for developers to add plugins that:
- look great
- specify dependencies
- have descriptions with syntax highlighting
- are easy to maintain
We decided to integrate with GitHub, the social coding website, to enable developers to focus on the code and nothing else. By following a few simple guidelines, you’ll be able to deploy code to the source control repository (git), and then only click one button in our website: either the one to add it, or the one to update it.
In the following video, I’ll show you how I create an account, upload my plugin, and then update it in 30 seconds.
Conclusion
We hope you like this new website feature as much as we do, and we look forward to your involvement and contributions.
As an user of the system, if you see something off or have a suggestion, please drop us a note.
As the developer and maintainer of the project, I want to give my special thanks to Chris (for his help with Markdown parsing), Oskar (for his design help) and the Symfony project, for providing us with a great framework to build on, as well as the entire MooTools development team who helped find bugs and provided countless suggestions on how to make it better before we launched it.
But the plugin repository itself wouldn’t be anything without you - the MooTools Community. As much as the plugins catalog is for you, it must by definition be by you, too. As excited as we are to have this finally online, it doesn’t compare to our excitement to see what our awesome community comes up with every day.
On another note, the technology that empowers the Forge has been opensourced, for the use of any other open source project.
Happy hacking!
December 10th, 2009 at 4:01 pm
Awesome! Looking forward to working with it :o)
December 10th, 2009 at 4:06 pm
http://bit.ly/WinAylott
December 10th, 2009 at 4:11 pm
Absolutely awesome. Been waiting for this for quite some time, very happy to see it launch!
December 10th, 2009 at 4:12 pm
Ahahah Chris! :D
you’re flodding our lives with that image! ;)
anyway mootools FTW!
December 10th, 2009 at 4:14 pm
Can’t wait (for it to load (but I’m having to))
December 10th, 2009 at 4:25 pm
December 10th, 2009 at 4:28 pm
Absolutely awesome, I will release all the components I developped as soon as I release the website which use them (for christmas). ^^ I love mootools!
December 10th, 2009 at 4:30 pm
it’s terrific :)
December 10th, 2009 at 4:51 pm
WOW, WOW, WOW! This is amazing!!!
December 10th, 2009 at 5:16 pm
Congratulations! Also, open-sourcing the site is a great idea!
December 10th, 2009 at 5:51 pm
Awesome! Looks like I might just have to finally make the jump to GitHub from SVN.
December 10th, 2009 at 5:57 pm
A great addition to Mootools BUT when the forge is viewed with IE6 …
Line 9: Expected identifier, string or number Line 213 : Object doesn’t support this property or method
December 10th, 2009 at 8:31 pm
congratulates to Mootools team!:D
December 10th, 2009 at 8:56 pm
Awesome!!! A long time in the making and a job very well done! Thank you!!
One suggestion I would have is when viewing docs/demo/etc that are offsite to display them in an iframe so you don’t leave the site. Maybe also display “author website” link where you can click if you want to go to the actual website.
It would also be kind of cool to see the “date added”.
December 10th, 2009 at 9:29 pm
Great news. But can I post comments to one plugin? I signed up, but I found there is no place to post comments.
December 10th, 2009 at 11:49 pm
Awesome, thanks!
December 11th, 2009 at 12:02 am
Awesome… been looking forward to this for a while, thanks for taking the time to put this together!
December 11th, 2009 at 1:03 am
Great news! :)
December 11th, 2009 at 1:12 am
Oh sweet! A simple 5-star-rating function would be a great addition.
December 11th, 2009 at 2:57 am
5-star rating failed for youtube. A simple I-use-this/I-love-this like ohloh/github should be cool … and you can keep track on loved projects :)
Connecting to github could be more tight, so the forge already knows your account, allows you to follow repos by click in the forge … github rocks (when its up and fast)
December 11th, 2009 at 3:25 am
Looks very nice and looking forward to pick up some nice addons and plugins :) I even start thinking about publishing some of my own work, but cant push myself to take those steps that involve publishing your code. We’ll see..
Great work, MooTools FTW
December 11th, 2009 at 3:41 am
And what if I don’t like / use git / github?
December 11th, 2009 at 4:40 am
Very cool :)
December 11th, 2009 at 5:51 am
@Bounga then you might use the “old” one: esteak.net
December 11th, 2009 at 6:00 am
Very cool! Thank you! But I’ve got 1 suggestion: you maybe could/should consider in the future to implement the ability for the developer to link his site instead of the source code. This need, for me, comes from 2 considerations:
I’m happy if my plugin is listed in forge, with a description, dependencies and so on… But I want that every one will visit my site before downloading it.
I’d like to receive donations for my plugin.
If one can download it directly from Forge, well, the developer looses traffic and donations.
I understand though, that for a lot of people these are definitely not issues and they prefer mantain their code only in Forge, since it’s so well designed. So, the feature I’m suggesting should be optional.
Bye!
December 11th, 2009 at 8:38 am
This looks pretty sweet! I’ve been waiting for something like this. However I’m using mercurial as my VCS of choice and have absolutely no desire to switch to git in the near future. So I’d like to know if you’re considering other options to get your plugins into the mootools forge apart from github?
December 11th, 2009 at 8:41 am
Yeah, this forge is really cool. But after all I heard about and the fact that I was so much waiting for it, I’m a bit dissapointed. So much noise for a not so much awesome tool. Usability and ergonomy are not really on top. But that’s a first release, I know this gonna improve in the future! :)
December 11th, 2009 at 9:05 am
I think subversion support would be cool. Ok, Git is growing in popularity, but subversion is much used too. I guess it can’t be that hard to fetch tags (for different versions), a README.md and package.yml file.
December 11th, 2009 at 12:05 pm
@Stratboy:
As far as reaching your website, I think that’s something we’re intentionally avoiding. Users shouldn’t have to navigate to and fro sites just to find a plugin. The demos, docs, and code are dominant so that users can find what they need and move on. If they really want to, they’ll click on a link to your site. Perhaps there’s a better way to promote your site, any ideas welcomed.
For receiving donations, github supports this feature. Moreover, you could include a link in the docs/description regarding that donation. I’d opt for github, though.
December 11th, 2009 at 1:04 pm
We are all very excited about it! Thats as very nice thing that will help ppl find the plugins they want easily. I agree with stratboy about the link for a site, w/e site you wanna put there (optional). About donations, github still supports it!
December 11th, 2009 at 1:10 pm
forget about what i said, theres still a link for the site on the developer’s page!
December 11th, 2009 at 1:10 pm
@Stratboy: You got a good point there, although there’s two ways you can do this: in your github url you should have in your user details (if you don’t have it yet) a link to your website, and also in your profile in the forge, you can set a small description, so there you can also include the links to your website. If you feel like you’d like to encourage donations for your plugin/s, just include a comment in those regards in the readme.md file. @Bounga: The team has discussed this topic in detail. We believe any person would find that using github is the easiest, quickest and cleanest way to deploy a plugin, with all the things this concept includes (readme, dependencies, url, screenshots…) so if you do not feel like using github yet, I encourage you to start already ;)
T. Aylott FTW!!
December 11th, 2009 at 1:17 pm
Congratulations! that’s a good new! Long live Mootools!!
December 11th, 2009 at 10:49 pm
It’s great!
December 12th, 2009 at 2:29 am
@rendez :) Yes, almost :) It’s not enough I think. The option I’m talking about it to NOT allow the user to download the plugin directly from Forge. The user should find the plugin, see the description, dependencies or whatever, decide that hey, it’s good, and go to the developer site by clicking download or a similar button. In other words, one should be able to decide to make available to Forge users all the ::info + source:: or ::only a part of them:: (for example keeping docs and download in his site). This is the only way to ensure traffic and aventually donations by every user.
December 12th, 2009 at 5:53 am
Excellent idea!
December 12th, 2009 at 10:30 am
Very nice! Can’t wait for MooTools 2.0 and ART!
December 13th, 2009 at 12:39 pm
Very nice, the interface rocks. Now I just released my cwcrop-plugin there - otherwise this would have happend 2012 or so.
December 15th, 2009 at 8:40 am
I can’t tell you how glad I am to see the GitHub integration. Excellent work!
December 15th, 2009 at 8:52 am
One thing I noticed about the signup process that you may want to tweak is inconsistent verbiage in the welcome email. The subject line and header in the email body both say “Welcome to MooTools Plugins”, where it should read “Welcome to MooTools Forge”.
Nitpicking.
December 15th, 2009 at 4:50 pm
Excellent job; a rating system and user contributed documentation would be a great benefit.
Also, http://mootools.net/forge/browse/category/realtime wishful thinking :o
December 15th, 2009 at 4:53 pm
Wishful thinking? Did you know that APE (http://www.ape-project.org/) is bundled with MooTools for server-side scripts? :)