What’s cooking in Apache Incubator ?

If you don’t know or never heard about Apache then you must be coming from .NET space or you must be new to Java, but that’s allright you can go to their website to find out more about them. Apache is like the shrine for Java developers, best of the best open source projects can be found there and the list of open source project keeps on growing, even Perl (the language that is) is hosted in Apache.

Open source projects before accepted as a top level Apache project must go through the incubator process, to know more about the process you can read the information on their site. I found some interesting projects that are in the incubator stage, following are the projects found on the svn repository and website:

abdera (Java)
The Abdera project is an implementation of the Atom Syndication Format (RFC4287) and the Atom Publishing Protocol specifications published by the IETF Atompub working group.

agila (Java)
There is no info on the Incubator website but looking at the SVN looks like it’s some kind of BPEL/BPM/Workflow kind of project.

bluesky (Java)
The Bluesky Project is an e-learning solution designed to help solve the disparity in availabilty of education between well-developed cities and poorer regions of China.

buildr (Ruby)
Buildr is a build system for Java applications written in Ruby. We wanted something that?s simple and intuitive to use, so we only need to tell it what to do, and it takes care of the rest. But also something we can easily extend for those one-off tasks, with a language that?s a joy to use. And of course, we wanted it to be fast, reliable and have outstanding dependency management.

composer (Java)
Apache Composer is a merging of PicoContainer and Plexus

couchdb (Erlang)
The CouchDB Project is a distributed, fault-tolerant and schema-free document-oriented database accessible via a RESTful HTTP/JSON API.

empire-db (Java)
Empire-db is a data persistence component which allows database vendor independent dynamic query definition as well as safe and simple data retrieval and updating.

graffito (Java)
CMS solution that uses JetSpeed 2 portal components

hama (Java)
The Hama Project is a parallel matrix computational package based on Hadoop

heraldry (Java)
Project within the Apache Software Foundation to develop technologies around the emerging user-centric identity space. The project utilize Yadis for URL/XRI-based service discovery and OpenID for web based single-sign-on and the basis of exchanging profile data.

imperius (Java)
Imperius (Simple Policy Language) or SPL - Is a simple standards based object-oriented policy language that allows expression of management policies using condition-action rules. Imperius provides an extensible set of over 100 operations for expressing conditions and actions. Imperius is a generalization of the CIM-SPL language. Conversely, CIM-SPL can be thought of as Imperius with CIM binding. Imperius can be extended to create similar bindings for other environments. JavaSPL (Imperius with Java binding) is another such example.

ivy (Java)
Ivy is a tool for managing (recording, tracking, resolving and reporting) project dependencies. It provides the necessary flexibility and configurability to be adapted to a broad range of dependency management and build processes.

jsecurity (Java)
JSecurity is a powerful and flexible open-source Java security framework that cleanly handles authentication, authorization, enterprise session management and cryptography. JSecurity entered the Apache Incubator in June, 2008.

jspwiki (Java)
The JSPWiki Project is a a modular and user-extensible wiki-engine, based on the open source JSPWiki software.

juice (Java)
JuiCE is a Java Crypro Extension (JCE) provider that uses the OpenSSL crypto functions as its crypto, digest, signature, and key generation engines.

log4php (PHP)
The Log4php project restarted on 2007-07-04 with a new development team. It implements a logging API similar to log4j but in PHP.

lokahi (Java)
The Apache Lokahi project presents a web based modular framework written in Java to manage both Apache HTTP Server and Apache Tomcat, scaling to both horizontal and vertical buildout of these services across an enterprise.

lucene.net (.NET)
Lucene.Net is a source code, class-per-class, API-per-API and algorithmatic port of the Java Lucene search engine to the C# and .NET platform utilizing Microsoft .NET Framework.

lucene4c (C)
Lucene4c is a port of the Lucene search engine library to C.

nmaven (.NET)
NMaven develops plugins and integration for Maven to make building and using .NET languages a first-class citizen in Maven.

olio (PHP)
Olio is a web 2.0 toolkit to help developers evaluate the suitability, functionality and performance of various web technologies by implementing a reasonably complex application in several different technologies.

pdfbox (Java)
PDFBox is an open source Java library for working with PDF documents.

photark (Java)
PhotArk is a photo gallery application, accessible via the web and written in Java.

pig (Java)
Pig is a platform for analyzing large data sets that consists of a high-level language for expressing data analysis programs, coupled with infrastructure for evaluating these programs. The salient property of Pig programs is that their structure is amenable to substantial parallelization, which in turns enables them to handle very large data sets.

qpid (Java)
The Qpid Project provides an open and interoperable, multiple language implementations of the Advanced Messaged Queuing Protocol (AMQP) specification and related technologies including PGM, transaction management, queuing, distribution, security, management and heterogeneous multi-platform support for messaging.

rat (Java)
RAT is comprehension and auditing for distributions and source code. Project RAT will provide a focus for components, applications and integration tools for the comprehension and audit of distributions and source code. It will collect data and meta-data as required. It will create suitable schemas for this data and meta-data as required.

rcf (Java)
The RCF project represents the incubation of a comprehensive library of JavaServer Faces components. The intended destination of this project is the existing Apache MyFaces project.

river (Java)
The River Project is a Jini technology implementation community.

sanselan (Java)
The Sanselan Project is a pure-java image library for reading and writing a variety of image formats.

shindig (Java)
Shindig is an OpenSocial container

sling (Java)
Sling is a framework to develop content centric web applications based on the idea of modularizing the rendering of HTTP resources.

thrift (Mixed)
Thrift is cross-language serialization and RPC framework. It combines a powerful software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, C#, Erlang, Perl, and several other languages. Thrift was originally developed at Facebook and open-sourced in April, 2007. Thrift entered the Apache Incubator in May, 2008.

tika (Java)
Tika is a toolkit for detecting and extracting metadata and structured text content from various documents using existing parser libraries.

triplesoup (Java)
TripleSoup is an effort started within the Apache Incubator to create a SPARQL endpoint

tsik (Java)
TSIK is an XML/SOAP security library/toolkit that implements several of the WS-* standards as defined by both OASIS and W3C.

uima (C++)
The Apache UIMA Project will create a component framework for the analysis of unstructured data. It will include an SDK and tooling for composing and running analytic components written in Java and C++.

wadi (Java)
WADI is an acronym of ‘Web Application Distribution Infrastructure’. WADI started life as a solution to the problems surrounding the distribution of state in clustered web tiers, but is becoming a more generalised distributed caching service. WADI’s aim is to resolve many of the problems of dealing with state in a cluster. This involves technologies such as :

woden (Java)
Incubation subproject of the Apache Web Services Project to develop a Java class library for reading, manipulating, creating and writing WSDL documents, initially to support WSDL 2.0 but with the longer term aim of supporting past, present and future versions of WSDL. The Woden API will consist of a set of Java interfaces. The WSDL 2.0-specific portion of the Woden API will conform to the W3C WSDL 2.0 specification. The implementation will be a high performance implementation directly usable in other Apache projects such as Axis2.

xap (JS)
XAP is an XML-based declarative framework for building, deploying and maintaining rich, interactive Ajax powered web applications. It aims to reduce the need for scripting and help solve the development and maintenance challenges associated with large scale JavaScript programming.

xmlbeanscxx (C++)
The aim of the project is to produce a large and healthy community of those interested creating C++ equivalent to Apache’s XMLBeans project for Java.

yoko (Java)
The Yoko project is a robust and high performance CORBA server which is usable from inside any JVM. It also contains a corba binding which uses the apache cxf engine to expose the corba application as web services.

The pie chart show the breakdown of the projects based on the language

Update:
Thanks to Mike for pointing out that CouchDB is written in Erlang not Java. Chart has been updated too

1 Comment so far

  1. Mike on October 9th, 2008

    Quick correction - CouchDB is not written in Java, it’s written in Erlang.

Leave a reply