I am very happy to announce another Alfresco Community release is planned within the next few days. This will be the Alfresco Community 5.0.a release and is based on very latest public community code-line. This is the same code base that our Alfresco Cloud release is built on. This release represents an early preview of the features and look of Alfresco 5.0! There is more to come as we progress towards the 5.0 Enterprise release of Alfresco.
Alfresco 5.0 is now entirely built with maven. All artifacts are available on the Alfresco nexus. This is the first release we have built entirely with maven so please bear with us if there are any minor teething troubles!
Here are some of the exciting new features and improvements that you will find in 5.0.a.
Search is an area we are striving to improve greatly in Alfresco 5.0. There are already two big functional improvements that enhance the findability of results, exploratory search and usability of the search user interface. The first is a complete rewrite of the Search page to use filters (facets) and allow inline user actions and browser history. The second is a feature giving instant results within the search box itself for a number of common search entities; documents, people and Share sites.
Before going into details, it is first worth mentioning a small but important improvement for search generally. The default search operator for a multi-term search has changed from OR to AND. This is a seemingly minor change but actually makes a huge difference to the search result relevance to the user and in turn reduces server-load. Generally smaller result sets are returned to the user and these results tend to be more specific which also reduces the number of additional searches required by the user to find relevant results.
Filtered Search Results
Like many modern search interfaces including ones you will be familiar with like Amazon and eBay, the Alfresco search interface now uses filters (also known as facets) to provide a fast, interactive way to reduce a large number of results to a smaller number and help the user to find the specific item they want. Out-of-the box Alfresco provides a number of filters for File Type (mimetype), Creator, Modifier, Created and Modified Date and Size.
More filter types are possible, and configuration screens for this feature will be coming for a future 5.0 release. Custom facet controls can be created using the flexible Aikau framework. Developers may be interested to know that this page is the first complete Share page to be written in 100% Aikau framework - all from reusable, highly extendable web components.
Inline actions - the user may now perform useful work within the search results page itself, without being forced to navigate away from the results list to a document details page. More actions will be coming in a future 5.0 release. We also intend to add a full inline previewer of a selected document, again to reduce the need to navigate away from the search results just to read a document.
URL fragment history - the user entered search terms, selected search filters and sort settings are made part of the URL history to aid in navigation to/from the search results and easy bookmarking of a useful search.
Infinite scroll - rather than paging we are using infinite scroll to present long result lists. Feedback on this and any other UX feature is welcome!
Instant Search Results
The instant results feature (called Live Search) provide near real-time search results for Documents, Sites and People immediately as the user is typing in the search box. Combined with optimized search APIs and the change to AND multiple terms by default, this is a great interactive way to explore search results and find items from any screen in Share.
Note that improvements to correctly deal with or filter other entity types such as Wiki, Blog and Discussions pages are in development.
HTML5 pdf.js Previewer
Alfresco Share has always had a powerful preview component capable of displaying virtually any document type as a preview, from images to text to Word and Powerpoint. However most of the more complex document types required the 3rd party Flash plugin to enable this. For Alfresco 5.0 we added a pure HTML5 based document previewer with better browser support, faster performance and no reliance on 3rd party plugins.
The viewer is based on the buoyant pdf.js open-source project originally contributed by Mozilla. It is high performance PDF viewer that can display complex multi-page PDF documents in any HTML5 compatible browser - including desktop browsers and mobile devices. Developers from Mozilla, Opera and many other individuals are contributing to improve the technology at a rapid pace.
Alfresco has taken advantage of its flexible transformation pipeline that can transform virtually any document type into PDF - this is then displayed inline in the browser. The viewer is based on the Mozilla example viewer and we have added a full screen maximized view, document search, search highlighting and the ability to generate a link to any page of the document. We should thank Community contributor Peter Löfgren and Alfresco engineer Will Abson for their collaboration on the Share Extras project this viewer was originally developed in.
Multiple pages can be displayed on screen, with an optional mini summary view and linked table of contents.
This brings usable multi-page document previews to mobile devices including iPad. Users who do not have a compatible browser such as IE8 will still see the original Flash based preview - the improvement is seamless for supported HTML5 browsers.
Developers and Alfresco Administrators may be interested to know that this change should also improve server performance and stability as it actually removes a step in the most common transformation pipeline 'office doc -> PDF via OpenOffice -> SWF via pdf2swf.exe' the pdf2swf step is no longer needed! This step was also the most common problem area with transforming documents for preview - the HTML5 previewer can cope with all the documents we have tested that potentially cause crashes or hangs with the pdf2swf external process. Also as the pdf.js project moves forward with additional compatibility and performance improvements we can take advantage of that effort.
The version of pdf.js used is 1.0.277.
The inline HTML editor used to edit .html content, comments, wiki, blog and discussion pages in Alfresco has been upgraded to TinyMCE4. This provides a more modern looking editing experience with various minor improvements.
SpringSurf - Aikau framework
The SpringSurf web-framework underpinning the Alfresco Share web-application continues to improve. Surf now has support for LESS CSS pre-processing and WebScript localization import support. Many more Aikau framework widgets are available and the Filtered Search screen and all inline actions it uses are a good example of those components in action. The header and title menu area of all pages are also built using Aikau widgets.
- Previews and thumbnails now generated for OpenOffice ODG drawing format.
- Dependent libraries have been updated to more recent versions; including PDFBox, Apache Commons, Tikka etc.
- UI tweaks and improvements - with more coming in future 5.0 Community releases.
Installed 3rd party components
Java 1.7.0_60, Tomcat 7.0.53, PostgreSQL 9.2.4, ImageMagick 6.8.6
As usual the Share translations have been improved and updated. Translations include: French, German, Italian, Spanish, Japanese, Dutch, Russian, Norwegian, Simplified Chinese and new Brazilian Portuguese.
Lots of bugs have been fixed as usual. See the list of fixed bugs since the 4.2.e release.