Skip to content

Commons Commander

After many years of resistance, I have finally succumbed to the temptation of blogging (just when blogs come out of fashion, it seems…). I would like to start by writing about something rather familiar to me: some of the tools I developed for Wikipedia and other Wikimedia projects. I hope to reach more people than on the odd mailing list, while making it easier to ignore my ramblings.


I shall begin this series with Commons Commander. Unsatisfied with the media handling capabilities of MediaWiki (mea maxima culpa), transferring desktop file handling to the web interface seemed like an obvious choice. A very successful approach to file handling in the olden days was Norton Commander, a two-pane interface that allowed for easy moving and copying of files between panes, and inspired a plethora of clones. My first attempt at such a clone written in JavaScript was toolserver-based and, while somewhat colourful, also a bit slow and clunky. Furthermore, because of toolserver regulations, I had to use my hand-rolled TUSC authentication system, which results in all changes being attributed to my bot account, rather than to the user.

Commons Commander, showing Recent uploads (updated every 5 sec) on the left, and a category on the right.

Earlier this month, I began a complete rewrite. The goal was to have it run directly in the Wikimedia Commons interface, using the normal user login and the Commons API. Also, this version aimed to support drag’n’drop operations. After quite some tinkering, I can now present the all-new Commons Commander!

The present

It is currently only for logged-in users, as the large-scale operations that are possible with Commander might be a too attractive drive-by target. The above link leads to a test mode (note the giant “[TEST MODE]” in the page heading), which will allow all operations in the interface, but not actually perform them on Commons; it is therefore risk-free to test (click here for the real thing!).

You can use drag’n’drop to “copy” files into a category, or to “move” them from one category into another; press ALT to “copy” from one category to another, just like you do on your desktop. Single-click thumbnails to mark them, and then drag them all in a single action. File information will appear when you hover over a thumbnail, and you can right-click for more actions (including “rename”).

If you like the demo, you might want to add Commons Commander to your toolbox. To do that, go to your common.js page, and add the following line:


Now, a link to Commons Commander will show on every category and user page in your toolbox. If you are technically inclined, the code (GPL2+) is available here.

The future

Many improvements come to mind for Commons Commander. If you have ideas, problems, or code, please comment on this blog or on my talk page. As for the future of this blog, we shall see…