Top 8 Code Igniter Wiki Resources
December 18th, 2006
One of the reasons I started getting active in the Code Igniter community was because of... um... well, the community. The people who are active are such interesting people, who give a lot of themselves back into the framework. You only need to look at the very active forums to see this happening. Community contributions are cropping up all over, including CIForge.com, as well as numerous independent efforts to educate and evangelize. People from all walks of life are drawn to Code Igniter, presumably for the same reason I was. It just plain rocks. It helps you build faster, it helps you build more organized, and it helps you build more securely.
In fact, CI is so sweet, that you could download the framework and never visit the site again, and be instantly more productive... but if you really want to push the bounds, then you need to spend some time in the community wiki. The wiki is a mysterious, fantastic place - and if you can sort through the disorganization and flux, there are some real treats in there. In fact, nearly every project I've built has used something from the wiki*. So in no particular order, here are my top eight, wiki resources.
Panachart charting library
PanaChart is a PHP class for online charts creation using PHP scripting language and the GD image manipulation library. It makes it easy to plot several types of charts with less then 10 lines of code. PanaChart is suited for any scientific or business web application.
I needed a graphing library in my most recent project, and Panachart library worked out beautifully. Thanks go to Oscar Bajner for doing this up and making it available.
Honourable mentions: Craig's adaptation of an excellent and elegant 3D Pie chart library.
Session Libraries
Sessions form the backbone of nearly every web application you can build. Tracking logins, userinformation, preferences, etc. Code Igniter does come with its own very handy session class, but there are community contributions that make working with sessions even more secure and powerful. There are at least 3 excellent contributions in the session management realm, but I keep coming back to Seele's native session. Its my "go to" session management library. Nice work, and thanks Seele!
My favourite feature? "Flashdata"; you can set the session attribute that will persist only for the next request.
Also noteworthy are PHPsession and DB session.
PDF generation using dompdf plugin
I needed to be able to generate PDFs on the fly for Bambooinvoice's invoice export. There are a few choices out there, and I played with most of them. FPDF was nice, but I found the syntax to onerous to be practical (I want users to be able to control the look of their PDFs, and with FPDF they'd essentially need to learn a new language). After much searching, I hit upon dompdf. EXCELLENT! Decent support for what I needed to do, and has decent (not great) support for many CSS styles and XHTML. Please note, that it is PHP 5 only. PDF generation using dompdf plugin.

Filters
Filters allow you to execute code before, after or "around" a controller; modifying a controllers execution path without modifying the controller itself. Filters permit customization of an application to specific deployment requirements using CI hooks.
Also from Seele, the excellent Filters system. I've used this for authentication, data cleanup, and other assorted and sundry uses. It also seems to be one of those features that other frameworks use and is a commonly requested feature.
Microformats Plugin
Designed for humans first and machines second, microformats are a set of simple, open data formats built upon existing and widely adopted standards.
This helper is meant to ease the creation of various well known microformats. So if you ever need to generate microformats on your site, consider using the Microformats plugin. Currently it supports the widely used hCard implementation, and the less widely used (but I needed it) rel="license".
Rapyd Components
Rapyd is a set of components/classes that can help you to develop web applications "rapidly". Now It's a library for Code Igniter. Felix built this contribution up so much that it grew from its humble wiki entry, into its own website! I admit to this being the only entry in this article that I haven't put into production use yet, but it just looks so nice that I had to include it.

Sentry
Once upon a time, I wrote my own authentication library, and called it "userauth". Since then, George Dunlop has admirably taken over the project, and it has grown into a full mini-framework (nice work George). But now it is much too large for a drop-in authentication library. And that's where the excellent Sentry comes into play. Sentry is a simple security system written by thzero and actively discussed on the forums.
Sentry is perfect for those mid-size applications that need a functional user authentication system but don't really warrant building your own. It is practically plug and play, and when combined with hooks is a very quick and easy authentication system.
Excel Plugin
If you work with information long enough, your going to find a need to move it into the format of popular desktop applications. None is more popular then Office, and in the past I've found myself needing the ability to take arbitrary database results and push them out into CSV format that would get read by Excel. The result? I wrote the Excel Plugin.
Richmail
This library extends the Email library, adds the ability to take images and add them as inline attachments. It also made some performance improvements. If you build an email application, you can see how these are sorely needed. The richmail project has so much potential. Unfortunately it hasn't evolved much since its inception, and won't work without some heavy hacking. So reluctantly, I don't count it as one of the "8" top wiki entires... but I wish I could. Genoil come back to us!
* Let me be clear; I'm not saying these contributions are better then any other contribution, I'm just saying that these are the ones I find myself coming back to again and again.
This entry was made on December 18th, 2006 @ 8:31 and filed into CodeIgniter.

Cam wrote on December 18th, 2006 @ 13:03
These are really good. Thanks.