Our old Extensions and Templates Website has worked well over the years. It is one of the key and most frequented websites of the LibreOffice project, as it enables users to enhance the functionality of LibreOffice with add-ons and plug-ins, while providing an easy way for authors to improve LibreOffice.
We’d like to express a special thanks to Andreas Mantke for implementing, designing and maintaining it in first place! It was his initiative to come up with such a website and he has spent countless hours over the past years to maintain the site to the benefit of our community. Kudos and thank you so much for your help and dedication!
As we look forward, we’ve been thinking about how to progress, while building on some of the other technologies we use.
After research and evaluation of various options, we’ve made the decision to update the website and base it on SilverStripe, the content management system we use for the main LibreOffice website. Our goals include:
- Streamlined design
- Improved usability for authors and users
- Make extensions very prominent
- Make it easy to localise in many languages
In the last few months, we’ve been working on a new site and workflow, and today we’d like to share the current progress, and provide some information on what’s going on under the hood. Christian Lohmaier talks about the new website, which will be available soon…
We decided to use a much more reduced and simplified setup for this. With fewer tools to maintain, the easier it is to add improvements along the way.
We’ve made the decision to go with SilverStripe, since that is a CMS we are already familiar with since we are already using it for our main website. It has a Model View Controller design that is easy to grasp and extend by anyone who knows some PHP and html and CSS.
The separate backend (administrative interface) and frontend (what a visitor using the site sees) allows us to streamline the workflow and improve error handling.
Having the data completely decoupled from the representation will allow us to revamp the site as new ideas come along or potential problems will surface. One of our goals is to simplify the user interface and also allow for translation and localization of both the extensions as well as the whole site from the very beginning. Extension maintainers can translate their listing into the language of their main target language.
Similarly, users told us that they wanted their extensions to be even easier to discover, so for this we decided to go with a curated list of tags as the main categorization/classification. We learned from other tag-using systems (like ask) that freeform tags would require a high level of discipline from content creators to not create too specific or too similar tags to make for a useful search tool.
Having a curated list of tags also allows for translation of the tags, further improving the experience for our non-English speaking endusers. This also will allow us to get rid of the rather arbitrary split into templates and extensions, but rather have a more targeted listings.
And since we’re already using SilverStripe in combination with TDF’s Single Sign-On solution, current users of our SSO can easily access the new site.
Creating and editing
To illustrate the keep-it-simple approach, here is what an extension maintainer would see once logged in to edit or create an extension entry:
And here’s what creation of a new entry would look like:
While some people might think that this is not the most exciting user interface, and that it also boxes the user in, well: that is the whole point about it!
Just like on the current site, we kept the concept of having a main extension entry along with individual releases that might be limited to a certain language or a specific operating system:
The new sites provides some features also for extension moderators with a more expansive admin interface in which they would have access to reports and where they can add and maintain the list of available tags, and do other similar tasks.
In the next post we’ll dig a little deeper into the more technical stuff like the data model and templating systems. That will then provide the required knowledge to not just give feedback on the current design (both visual as well as from a low-level perspective), but already provide concrete improvements in form of patches.
As we’re a volunteer-driven, community project, we really appreciate any help – so if you want to give us a hand, join our website mailing list and drop us a line. We look forward to hearing from you!