Projects and Teams Global Virtual Hack-a-thon 2014

Showing results for 
Search instead for 
Did you mean: 

Projects and Teams Global Virtual Hack-a-thon 2014

0 0 952

These are project ideas for the May 2014 Global Virtual Hack-a-thon. Please join a team, or start a new team by listing your project.

For each project, you should consider addressing the following:


  • The coordinator(s)
  • A brief description
  • How you will collaborate during the event,
  • Any prep work for the project, such as developer tools or skills participants should understand

Ideas Looking for a Good Home


(Note, chef recipes for deploying Alfresco in a multi-tier clustered form to AWS will be coming as part of the Alfresco Enterprise Deployment tool that is currently being written by Alfresco)

  • Google Compute Engine Deployment Templates:
    • Leverage Compute Engine, CloudStorage & CloudSQL
  • OpenShift cartridge for Alfresco
  • Package Tony Parzgnat's data list constraints code as an open source project: Tony wrote a cool add-on that uses data lists to manage constraints (see his Lightning Talk). But he hasn't had time to clean it up and stick it in an open code repository yet. Let's do it for him!
  • Update Jeff's Five Star Ratings Add-On: The Five Star Ratings add-on hasn't been touched in a while. Share has changed a bit since it was developed. It would be great if someone would get it working in 4.2 using all of the latest share extension points.
  • Write an example showing how to extend the People Picker: Many people want to extend how the out-of-the-box people picker works. For example, maybe when you start a workflow and you are in a site, you only want to search across existing members of the site instead of all of the people in the repository. Create an extension that does that along with a blog post that explains how others could do something similarly.
  • Build a real-time chat integration for Share: This is another frequently asked integration: How to integrate live, real-time chat into Alfresco Share. For example, something like Openfire might be cool.
  • Build a Redmine integration: Someone in IRC asked recently about building an integration between Alfresco and Redmine, an open source project management tool.
  • Create an extension that lets users select their 'start' page: Today when you log into Share you always go to the same place. But that might not be best for every user. How about an add-on that let's users specify their preference?
  • Test and document various upgrade paths for Community Edition: There are a number of people running extremely old versions of Alfresco Community Edition. They are missing out on some killer features, and, perhaps more importantly, critical security updates. We could help this problem by making it easier to upgrade Community Edition with tested and documented upgrade paths.
  • Build a 'CMIS Server' distribution of Alfresco: Take Community Edition and rip out everything but the core repo, search, web scripts, the public API, and CMIS. What you'd have left is a CMIS Server similar to the Apache Chemistry InMemory server but probably robust enough to be used as the core of many content-centric applications.
  • Update the S3 connector project to work with Alfresco 4.2x: The project is hosted in


Package Alfresco 4.2.f for Ubuntu/Debian


Description: As the title says, the idea will be to create a deb package for Alfresco and setup a PPA so people can just do apt-get update to get the latest and greatest 


  • Mark Clarke (mxc)


Refactor the Alfresco SDK to leverage the Alfresco Maven SDK


Coordinator: Jeff Potts / Ole Hejlskov?

Description: Jeff has placed the source code for the old Alfresco SDK in GitHub with the goal of getting others to help me refactor it to leverage the Alfresco Maven SDK and to remove outdated examples such as the native Web Services API and Alfresco Explorer customizations. Unfortunately, none of us have had the time to do that. But it still needs to be done. If Jeff doesn't get much interest in the cmislib browser binding project he will consider coordinating this project instead, but others should also feel free to own it or say that you would contribute to it.


  • Ole Hejlskov (ohej)

Archiving Alfresco content to AWS Glacier


Coordinator: Nathan McMinn

Description: AWS Glacier is a real game changer for the long term archiving space, with a cost that is an order of magnitude lower than other archive solutions.  This project will work to build an AWS Glacier integration for Alfresco, enabling content to be stored long term in the Glacier service, while still being searchable in Alfresco.


  • Angel Borroy
  • Add your name here

Add browser binding support to cmislib


Coordinator: Jeff Potts

Description: Currently, in cmislib, the Python API for CMIS, which is managed as part of Apache Chemistry, there is a partial implementation of support for the CMIS 1.1 browser binding. It's time to finish it off. If we do it, I'll be able to push out a formal release which will clear the way for the next big milestone, which is Python 3.x support. I would love it if you enjoyed participating on this so much, you continued participating in the project after the hack-a-thon, which would be great because I am looking to take on additional maintainers.


  • Jeff Potts
  • Richard Esplin

Exploring an Alfresco repository in Minecraft


Coordinator:  Roy Wetherall

Description:  Minecraft has an API. Alfresco has an API. Why not explore content from within Minecraft?

HQ:  Alfresco Sydney Office



  • Roy Wetherall
  • Daniel Figucio

Making Alfresco's subsystems dynamic using dynamic extensions


Coordinators: Philippe Dubois and Laurent Van der Linden

Headquarters: Philippe and Laurent will be hacking at the hacker room in Brussels

Description: Dynamic extensions enables runtime redeployment of Alfresco extensions, let's extend this to subsystems so we can build a modular Alfresco

Links: Dynamic extensions for Alfresco


  • Phillipe Dubois
  • Laurent Van der Linden
  • Frederik Anrys
  • Add your name here...

Improving and Enhancing AAAR


Coordinators: Boriss Mejías and Lanre Abiwon

Headquarters: Hacker room in Brussels

Description: Alfresco Audit Analysis and Reporting (AAAR), is a solution to extract, store and query auditing data from Alfresco, generating reports to understand how Alfresco is being used. In this project we will be improving some of the existing reporting features, and we will be extending the system with new ones. The details of the tasks are yet to be determined. Francesco Corti, creator of AAAR, will be providing
technical help.


  • Francesco Corti
  • Laurent Stiens
  • Lanre Abiwon (DarkStar1)
  • Boriss Mejías (bmejias)
  • Add your name here...

Adding write support to the Share Node Browser


Coordinator: Will Abson

Description: The Node Browser in Share is a standard admin console component which was inspired by the Alfresco Explorer equivalent, but the functionality has not been enhanced much since then. This project will explore adding support for adding and removing aspects and setting properties directly on nodes. If time allows we will explore creating and removing associations and using the new Aikau framework to implement the client-side component.


  • Will Abson
  • Add your name here...

Updates to lambdalf (Clojure wrapper for Alfresco Java API and extension points)


Coordinator: Peter Monks

Headquarters: Alfresco US HQ

Collaboration platforms: Github, Google Hangout, RFC-2549, Skype (in decreasing preference order)

Description: The lambdalf library provides an idiomatic Clojure wrapper of the Alfresco Java API.  While comprehensive in 2011 (when it was originally developed), both Alfresco and Clojure have moved on since then and the intent of this hackathon project is to bring it up to date.  Individual tasks may include:

  • add more coverage of the Alfresco Public Java API
  • migrate the build from Maven to leiningen (likely manifested as a leiningen plugin that allows leiningen to directly produce AMP files)
  • merge the Clojure web scripts and lambdalf projects - there's little adoption of web scripts outside of the Alfresco ecosystem, and having these two projects separate makes the 80% use case (Clojure Web Scripts in Alfresco) more difficult


  • Add your name here...

Redesign of CHEM100


Coordinator: Mark Stang

Description: The goal of this hackathon project is to redesign the CHEM100 library to be server side, rather than client side.  Currently the library lives on the client side and converts SQL-92 statements (SELECT, UPDATE, INSERT and DELETE) into equivalent CMIS calls - the new design would provide a number of Web Scripts that directly receive the SQL-92 statements and convert them, on the server, directly into Alfresco Java API calls (possibly leveraging the lambdalf library).  This will reduce the number of over-the-wire round trips, improving performance.

CHEM100 uses a number of innovative technologies, including Clojure and the excellent Instaparse parsing library.


  • Add your name here...

Distributed actions execution with Akka


Coordinator: Bulat Yaminov

Description: The goal of this project is to try integrating Akka with Alfresco, so that some jobs can execute in parallel across an Alfresco cluster. This can be done as an elaboration of the alfresco-js-batch-executer, so that developers can run JavaScript scripts not only in multi-threaded and multi-transactional way, but also across several nodes of an Alfresco cluster.

Further we can see if Alfresco ActionService can be enhanced with Akka.


  • Bulat Yaminov
  • Add your name here...

Alfresco Share enhanced form controls Enhanced Form controls


Coordinator: Peter Löfgren

Description: The goal is to create a collection of enhanced form controls to Alfresco Share. First one will be a People picker auto complete.


  • Peter Löfgren
  • Bhagya Silva

Heroku buildpack to deploy Alfresco demo instance


Coordinator: Sébastien Le Marchand

Description: The goal is to create a buildpack to easily deploy Alfresco demo instance on Heroku.


  • Sébastien Le Marchand

Process Alfresco Meetup questionnaires in the Data List and select a winner


Coordinator: Oksana Kurysheva

Description: Creating, printing, scanning, uploading questionnaires to Alfresco and selecting a random winner. Except several Alfresco webscripts the project includes a number of Bash scripts to generate individual questionnaires with QR-code for every meetup participant and simple Android app to scan QR-code with the person data on the questionnaires.



  • Oksana Kurysheva
  • Sergey Radchenko
  • Nikita Koltsov
  • Alexey Vasyukov

Yet Another Datagrid: extract from Alvex generic purpose datagrid enhancements


Coordinator: Oksana Kurysheva

Description: Extract from Alvex generic purpose datagrid with cell renderers, user configurable columns and search toolbar to the separate repo.



  • Alexey Vasyukov
  • Konstantin Sergeev

Snowbound Transformation Action Executor


Coordinator: Kyle Adams

Description: Expand the type of transformation actions leveraging Snowbound's RasterMaster SDK.


  • Kyle Adams