Skip navigation
All Places > Alfresco Addons > Blog

Alfresco Addons

5 posts
alfresco

Addon FAQs

Posted by alfresco Employee Jun 21, 2018

How do I submit an addon?

 

Just create a document with all the info and post in Alfresco Addons.

Use the following table with any Addon submitted: 

 

Owner
Versions

 

License Type
Project Page
Download Page
Tags
Component Type
Extension Points
Installation
Products

 

Be sure to add Categories to your document, so everyone knows which versions of Alfresco it supports. 

 

Are Addons maintained by Alfresco?

 

Addons are maintained by their creator and are not maintained or verified by Alfresco. 

 

What if I have a question about an Addon?

 

You can make a comment on any of the Addons listed on this site. If the creator is a member of the community, they'll get a notification. If they aren't (they'll have an email listed as owner, rather than name), you'll need to contact them directly. 

 

What if an addon doesn't work?

 

If you run across something broken, add a comment to the document or make a note in the document itself. 

alfresco

Intro to Alfresco Addons

Posted by alfresco Employee Jun 21, 2018

Alfresco Add-ons is a directory of enhancements for your Alfresco Products.

What is an add-on?

An Alfresco Add-on can improve the capabilities of an Alfresco product, but is not shipped with the product. Examples include:

  • Community maintained language packs,
  • Integrations with external systems,
  • Packaged customizations
  • System administration tools

 

How is this different from the Solutions Showcase?

The Solutions Showcase details solutions based on Alfresco that are produced by Certified Alfresco Partners. A solution solves a business problem by a leveraging a mixture of Alfresco configuration, Alfresco customization, a collection of add-ons, and consulting services. Solutions also often include a training and support component.

 

What editions, products, and versions of Alfresco are included in the directory?

There are add-ons in the directory for all Alfresco editions, including Community Edition, Enterprise Edition, and Alfresco in the cloud. There are add-ons for every product of Alfresco, including Share, Records Management, Web QuickStart, and the mobile applications. Developer tools are also included. The directory includes add-ons which are intended to be used with version 3.4 of Alfresco and newer.

 

Is this add-on updated for the newest version of Alfresco?

We do not maintain add-ons or the directory entries. We suggest you contact the add-on maintainer. Each entry contains a link that points to a site where you can get further information about the add-on. We suggest you also encourage the add-on maintainer to update the directory entry.

If you are unable to contact the maintainer of the add-on, or if you see something that needs immediate attention, please contact us.

 

Are the add-ons supported?

Unless otherwise indicated, Add-ons are not endorsed or supported by Alfresco.

Each add-on maintainer can specify a web address where people can get information about support for the add-on. If there is no such link, then it is likely that support is not available. Further information might be available on the project page for that add-on.

 

Does the directory only contain open source add-ons?

The directory contains add-ons under a variety of licenses. The submitter of the add-on can select the license that the project is using, including the option ""proprietary"".

 

What license to you recommend for an add-on?

The appropriate license for your add-on depends a lot on the goals you and your organization have in sponsoring an Alfresco Add-ons project. Evaluating the right choice for your specific circumstances probably requires the assistance of a legal professional. However, we like licenses approved by the Open Source Initiative because they encourage collaborative development. If you hope to have your Add-on accepted into Alfresco, you would need to select the Apache license, or sign a contribution agreement.

 

Someone else included my add-on in the directory. How do I update the entry?

We hope you feel flattered that someone found your add-on useful enough to include it in the directory. All of the documents on this site can be edited, so please update the owner to your name. 

 

I see a problem! How do I contact you?

Please contact us about a duplicate add-on or objectionable content. You can reach us by messaging community@alfresco.com or the community manager, Kristen Gastaldo.

Written by Richard Esplin

 

Background

The wiki in Alfresco Share is one of the most used collaboration features in Alfresco. Yet people who have experience with other wiki tools might notice that the wiki within Share lacks some convenient features. Thankfully the team behind the Share Extras project implemented some of those features and made them available to add to your Alfresco deployment. Screenshot of Wiki Table of Contents The Wiki Rich Content add-on is one of the most widely deployed Alfresco add-ons.

Main Functionality

The most frequently used functionality in the add-on is the ability to add dynamic table of contents based on the headings in an article. After installation, each time a wiki page that contains multiple headings is saved a table of contents will be generated for that page. This is an essential capability for making long and complex pages navigable. All preformatted text gets highlighted as if it were snippets of code. By adding the class "datatable" to a table on a wiki page, it will be rendered as a YUI Datable with useful features such as resizable and sortable columns. The original author of the add-on, Will Abson (@wabson), thinks that the most under-appreciated feature in the add-on is the ability to embed a document preview into a wiki page, rather than just linking to it. This can help a page stay up-to-date or it can be used to include rich content. To embed a document preview, use the Document Link dialog and then editing the link to change the target to one of the options that start "Embedded". (Images are embeddable out-of-the-box.) Datalists can be embedded by adding a class with the datalist ID to a standard table and if you specify columns that match the names of properties used in the datalist, then only those columns will be displayed. The add-on also provides the ability to embed into a wiki page external videos from YouTube and Vimeo by using the link dialog and selecting one of the "Embedded" targets. I found that HTTPS links were not recognized for inclusion, but after removing the "S" the video preview was properly embedded. The option to "Embed the preview with no link" will remove from the page the text that would otherwise link to the video, otherwise it shows up just above the preview. Screenshot of Wiki Embedded Previews

Compatibility, Installation, Configuration, and Removal

I tested the Add-on in both Enterprise Edition 4.0.2 and Community Edition 4.2.b. Everything worked great in both versions with the exception of document link previews. Due to changes to the wiki sanitization, the add-on will have to be updated for that feature to work in 4.2. As with other add-ons in the Share Extras project, installation is as simple as adding a JAR to your Alfresco classpath (see digression). The add-on requires no configuration; after installation each page you edit that has multiple headings will have a table of contents generated for it. The instructions mention needing to deploy the module, but that isn't necessary in versions of Alfresco newer that 4.0.2. However, each function in the add-on conveniently displays as a separate Share module, so it is easy to disable parts of the add-on by browsing to http://[server]:[port]/share/page/modules/deploy. I didn't notice any negative effect from removing modules like the table of contents, except that the enhanced content does not show up.

A Digression on Installation

There are lots of different ways to get your code into Alfresco. The most comprehensive documentation is currently a page in the wiki. The Wiki Rich Content add-on is distributed as a JAR file, and the instructions recommend that you put the JAR into tomcat/shared/lib. But that directory is not part of the standard classpath in Tomcat 6 which is shipped with Alfresco 4. That means you either need to add it to the classpath (best to add the jar to shared.loader in tomcat/conf/catalina.properties), or you need to use a different deployment mechanism. The recommended mechanism is to put the JAR into a custom AMP such that it is deployed into share/WEB-INF/lib, then use the apply_amps script to install it into the Share WAR. In future releases we may tweak the packaged tomcat install to add the shared library loader back to the classpath for convenience, but using it is not the recommended approach. To install on my demo system, I dropped it into tomcat/webapps/share/WEB-INF/lib and restarted Tomcat. I think this is the easiest approach for evaluation, but it is not recommended for production use because the add-on will be deleted on upgrade or redeployment of the WAR. I also don't recommend this approach because it makes it hard to differentiate between stock-Alfresco libraries and add-ons.

Customization

The add-on is relatively simple, as it is a grouping of discrete Share webscripts with some front-end CSS and JavaScript. Screenshot of Wiki Code FormattingCustomizing the look of the elements provided by the add-on is a clean process: unzip the JAR, edit the relevant CSS files in jar/META-INF/extras/components/wiki, rezip the directory into a JAR, and install. Other customizations require a basic understanding of webscripts. The add-on only contains Share webscripts; it does not modify the repository.

Future

The engineering team has been discussing how best to incorporate the most widely used features of Wiki Rich Content into the standard Alfresco Share install. The CSS improvements were added to core Share in 4.2.c. It is likely that the Table of Contents functionality will be merged into core Share in a future release. Development has slowed on the add-on. There has been talk of exposing similar capabilities in the Share site blogging component, but no work has been done on that yet. Most of the current efforts have been on an experimental project to re-implement the entire wiki component using the core Document Library code. That effort has yielded some promising results. As with all Share Extras projects, your contributions are appreciated. The maintainers accept all sort of quality contributions, but patches attached to issues in the tracker are the easiest to work with.

Conclusion

The Wiki Rich Content add-on augments the default Share wiki with important features for making complex pages useful.

Written by Richard Esplin

 

Background

Almost two years ago, Alfresco released version 3.4 with the tagline "social content management". The My Network dashlet does a good job of showing off those capabilities with nifty looking visualizations. The dashlet was written by Charles Le Seac’h (@) for the 2012 Dashlet Challenge. Due to a misunderstanding of the submission deadline it was not included in the judging, but we were impressed by the tool and wanted to increase its visibility. Charles is a ten year ECM veteran. Having deployed solutions on top of proprietary software, he started following Alfresco in 2006 and was very enthusiastic to find "a real professional open source ECM solution". His first Alfresco project was at a bank in 2007. Now he works for an ECM solutions company deploying Alfresco when it meets the customer's needs. He also uses Alfresco 4.0.e to store his project management documents. From 2007 to 2010, Charles maintained the Image Finder project on the old Alfresco Forge. At the time he was looking for a nice representation of images according to their "proximity". This lead him to investigate libraries for expressing relationships between data in a nice way. A few months ago he found the sigma.js library which is built for exactly this purpose. Displaying the relationship between people in Alfresco seemed like a good test project for the library, and it turned out to be more useful than he expected. The most complex part was finding time outside of his duties as a dad to work on the dashlet. We want to thank Charles for contributing this add-on, and equally thank his family for letting him use his August holidays to put together the project.

 

Main Functionality

Screen shot of dashlet displaying graph The My Network Dashlet visualizes the network of followers in an Alfresco repository. Each user that is connected to you through the follow relationship is displayed as a colored ball. You can traverse the network of who follows whom by successively drilling into the balls. Highlighting a ball provides the profile information of the user. Once you have identified someone you would like to follow or unfollow, the dashlet makes it very easy to perform that action. You can zoom in and out with the mouse wheel, and drag to view different parts of the network.

 

Install and Configuration

The installation and configuration of the dashlet is as painless as possible: download the amp, install it in Share, and restart the server. The dashlet will then be available for your users to add to their dashboards. After they add the dashlet, they can select whether they want to visualize who they follow or who is following them, whether straight or curved edges are more interesting, and the number of levels deep the visualization should go. Screen shot of configuration options and help text The project page for the dashlet has clear and easy to follow instructions with good screen shots and some simple videos. The source code is available on that page as a zip package. There is currently no formal issue tracker. If you want to report a bug, contribute an enhancement, or provide other feedback, you should leave a comment on the project page in Charles' blog. The text is translated in English and French, and it is easy to insert your own translations into the message files and webscripts of the AMP. The dashlet was written for version 4.0 of Alfresco, and I tested it in version 4.2.b of Alfresco Community Edition. It should work in either Community or Enterprise edition. It is made available under the terms of the GNU GPL v3.

 

Development Example

This dashlet is a good example of how to build and package Share customizations. The code is well organized, commented, and easy to follow. Since the behavior of the dashlet is interesting yet simple to conceptualize, it is a great illustration of the concepts behind constructing a Share dashlet. The client side javascript used by the dashlet gets complex, but it is clearly isolated from the other parts of the package. The author points out that the same approach can be taken to express other data in Alfresco in terms of nodes in a graph: content associations, folder trees, tags, and more. The dashlet is a starting point that hopefully people will build on to produce these other visualizations. Hopefully they will also be willing to contribute their add-ons to the directory for others to benefit. If you try out the add-on, remember to leave a rating on the entry page in the add-ons directory.

Written by Richard Esplin

Introduction

This is the first in a series of articles highlighting add-ons in the Alfresco add-ons directory. To start the series, I want to provide an overview of the largest umbrella project of add-ons for Alfresco Share: Will Abson's Share Extras project.

Background

Will Abson (@wabson) was one of the earliest employees to join the team at Alfresco in 2005. While working as a pre-sales engineer, Will started a collection of customizations to the (at the time) new Afresco Share user interface. Share was not yet complete enough to serve as a replacement for the original Explorer interface; it was targeted at the specific use case of collaboration. Will recognized that no one outside of the engineering team had spent significant time customizing Share, and he wanted to test the limits of what was possible. As his regular responsibilities permitted, he added to his collection of Share enhancements as more extension points were added to Share by Alfresco's UI Team. This library of Share enhancements gained a following both in Alfresco and in the larger community through Will's regular blog posts. Eventually he collected them all at Google Code, labeled the collection Share Extras, and started accepting contributions from other interested community members. Currently Will manages the project with the help of Florian Maul (@fmaul) who works for FME, a certified Alfresco Partner, and Peter Löfgren (@loftux), an active and influential community member. There are seven committers on the project.

Important Projects

Share Extras has produced a number of influential projects. Peter and Will have collaborated on the Media Viewers project which is highly rated on the add-ons site because the functionality it provides is widely requested. It allows media to be displayed flash-free in the browser. For many MIME types it takes advantage of PDF.js to allow features like syntax highlighting. Will presented on this project at DevCon 2012. Share Extras also includes a lot of dashlets to meet various needs. The Node Browser is an administrative project that started in Share Extras and was added to Alfresco 4. Other important administrative projects are Create Bulk Users, for importing users into Alfresco, and Execute Script Action, for running scripts against content in the document library.

Development Tools and Examples

Share Extras includes a number of development tools to make Share customization easier. Perhaps the most widely used tool right now is Florian's JavaScript Console, which has impressed Will with its rapid pace of development and amazing richness of features. Florian presented on this project at DevCon 2012. Other useful development tools are the OAuth Connector (part of Alfresco Share in 4.2) and the Site Extensions Project that Erik Winlöf demonstrated at DevCon 2012. The add-ons in Share Extras are also great examples for building your own customizations to Alfresco Share. The project contains functioning user dashlets, site daslets, admin console components, site types, data lists, document library views, pages, and themes that can all be examined. Looking at how add-ons in the project have been updated from Alfresco 3.x to 4.x is an instructive look at how you can upgrade your own enhancements. There are a few projects in Share Extras that are simply to provide examples for how to build your own customizations. This includes an example datalist, an example theme, and an example dashlet. In the future, these are going to move to their own home (see "Future" below).

Future

Share Extras is under active development. Now that Will is part of the engineering team, he can take advantage of the IDays program where engineers get about 10% of their time to work on their own projects. He summarized for me the three main initiatives he is currently undertaking.

Updating

Alfresco Engineering has significantly improved the process around Share customization in recent releases. This has triggered significant work to update older add-ons to take advantage of the better extension points. All of the add-ons at Google Code are labeled according to whether they will work on Afresco 3.x or 4.x, and the updated add-ons have two current versions available for download: a version for 0.x for installation into Alfresco 3.x and a version 2.x for installation into Alfresco 4.x. Most of the add-ons in Share Extras are packaged as JAR files. This is a common form of packaging extensions for Alfresco, but the official recommendation is to use AMP files so that you can take advantage of work currently being done to enhance the module management process. As Alfresco's module management tools improve, Will plans to wrap the JAR files inside AMP files to take advantage of those tools while still keeping the add-ons as strict packages that do not pollute the destination WARs.

Migrating to GitHub

The ability to fork code and create pull requests has drawn Will from Google Code to GitHub. But it will take a long time to migrate the project to the new hosting provider. Will's plan is to start new projects on GitHub and move old projects as part of major updates. For the foreseeable future, Share Extras projects might be at either locations, and some projects will have a version at both.

Separating Development Examples

The last major reorganization of the project is to make a clear distinction between add-ons that are ready to be used, and add-ons that exist solely as tools to learn how to customize Alfresco Share. Will wants each add-on in Share Extras to be useful in its own right, and so he is planning on migrating the pedagogic pieces to a new home as he updates them. The only one he has moved so far is the example dashlet that he updated for his DevCon presentation and it is currently living in his personal GitHub repo.

Learning More

Besides following the contributions to the actual project at Google Code and GitHub, the best way to keep up to date is to read Will's blog. There are two recorded presentations given by Will that provide an overview of the project:

Each entry on this site for an add-on that is part of the Share Extras project should have the "Share-Extras" tag.

Feedback

Will asked me to emphasize that he is excited to receive feedback on the project. After you download and try an add-on, you should rate it in the directory so that others know whether you liked it. Will monitors the comments on this site as best he can, but the surest way to get someone to look at an issue is to report it in the add-on's issue tracker at either Google Code or GitHub. Contributing a useful patch would make Will very happy.

Conclusion

Share Extras is an important contribution to the Alfesco Ecosystem. If you want to find mature add-ons, or want to learn how to build your own extensions to Alfresco Share, then you should spend some time exploring that project.

Filter Blog

By date: