
Official Elgg Website
Introduction
I’ve been playing the last few months with Elgg, an open-source social network engine that allows you to easily create your own social network. In this post I’ll try to give a general description of Elgg.
Elgg itself is just an engine for a plugin system, and these plugins provide the real social network functionalities. Downloading Elgg we find some default plugins that implement most of the basic functionalities expected of any social network (user profiles, blog, state messages, friends, etc.), but Elgg also has an active user community that has already developed hundreds of plugins providing a wide range of additional functionalities (photo albums, chat, etc.).
All these is also developed in a way that makes it easy to add or extend/modify existing plugins with just a few basic notions of programming. In future posts I’ll talk about the internal structure of Elgg and explain how to develop new plugins for it.

Basic Elgg entrance page
Technology
Elgg is based in the classic LAMP (Linux, Apache, MySql, PHP), so if we want to create or own social network we just need a linux server with there elements installed. It is also possible to install it under Windows, but it is recommended just for testing or development. Soon I’ll write a short guide explaining how to install it in Windows.
For development only PHP is needed, all the database queries are done calling a few methods provided by the Elgg engine. The only problem is that the documentation is not very good, but that’s something the development team is working trying to improve.
Of course the default Elgg interface is quite simple, but it is very easy to customize it to our taste with a minimal knowledge of CSS, and there are already many plugins that improve the default style and can be used as a starting point for our personal modifications.

Default user profile
Current state
One thing that we can say against Elgg is that most of the plugins developed so far are a bit “basic” and lack cohesion between eachother. This anyway is improving quickly and with little work we can create very attractive and feature-rich sites with just a fraction of the work that would be needed to develop them from scratch.
The plugins developed by the community are reaching a high level of maturity and quality, sometimes even providing functionalities not existing in other well-known social networks. As the community grows and Elgg itself improves, more interesting and advanced plugins will surely be developed.
About the development of Elgg itself, version 1.7 is currently planned for the end of November. This version will mainly be an internal improvement of the internal engine and the basic plugins stability, intended to solve bugs and clean up and standardize the code, which should at the same time make it easier to develop new plugins.

Community plugins list
Conclusion
Elgg is without doubt a very interesting project and shows the potential of open source development. With a big user community contributing with new plugins and functionalities, it is to expect that it will soon reach an even higher level of maturity and quality.