Hello devs, As some of you may know, I recently took on the challenge of developing a mobile compatible version of XWiki Enterprise. The objective of this development is to come up with an optimized solution for smartphone and tablet users, both from a technological point of view (using HTML5, CSS3 and perhaps mobile oriented JS libraries) and from a contextual perspective (when do mobile users use a wiki and most especially how they interact with it).
The targeted platforms that I plan to support, since I'm only one guy with limited time, are post Android 2.2 and post iOs 4.x platforms. The first release is planned for the end of January 2012. Because simply applying media queries to an existing desktop site won't completely optimize a mobile experience, I thought of building one from the ground up - this would imply a complete overhaul coupled with server/front-side adaptation (what Facebook, Google and most top internet brands are doing) Some of the key aspects that I plan to focus on are: functionality and user experience (establish what needs mobile users have in a wiki context), performance, future-proofness (easily adaptable for the ever-changing market of mobile devices, particularly in terms of screen size, resolution and browser changes), flexibility (easiness of adapting the skin to a clients' needs) I am considering using an adapted version of mobile boilerplate, which is a very popular baseline template being used by a lot of individuals who are developing a mobile web app (http://html5boilerplate.com/mobile), and build on top of it a new yet familiar user-experience, adapted to mobile context. In terms of functionality, my take is that the primary function of a user who is navigating a wiki is either looking for information (content) or trying to edit information. Administration or using the wiki to build structured applications falls under the use cases that the user won't be interested in doing. Thus, in the proposed attached mockups there's no schema for an Administration area or editing a document in object/class mode. The advantage of starting from scratch will allow me to strip everything that's unnecessary from the .vm files thus increasing performance; one example would be reducing requests => saving bandwidth. Following a discussion with our designers, Caty and Max, we came up with a couple of mockups that I believe can stand as the foundation for this mobile experience. Please find them here: http://incubator.myxwiki.org/xwiki/bin/view/Improvements/MobileSkinv3 or here in a higher quality: http://db.tt/8vX9OcBZ Another approach, for which I also gave a lot of thought, is to make an existing skin work passably well on a range of mobile devices by using media-queries and adjusting a great deal of .vm's. This will offer an "responsive design" experience, similar to the examples that can be found here: http://mediaqueri.es/ This approach has a lot of advocates and has gained quite an enthusiasm lately (there's even a book written on the topic: http://www.abookapart.com/products/responsive-web-design). Note that one particularity of the websites is that most of them have been built with a "mobile first" (http://www.lukew.com/ff/entry.asp?933) approach in mind, not having to adapt an existing desktop website. Secondly, these are mainly presentation websites, far from the scope of our product. However, I've been pondering about this alternative a lot recently, and I am thinking about going back to the drawing board and make an analysis of what exactly would take to develop the mobile skin this way and also have a thorough look at the code to see if the current markup can be easily adjusted to offer a responsive experience. My mainly concern is that instead of coming up with something clean, things will become instead messier, probably having to be forced to adopt varios unorthodox techniques or bad practices in the mobile web, such as using extra JS code to move markup around. I am gladly accepting any kind of input on this. Thank you, Mihai _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

