BambooInvoice 0.8.0… its ALIVE!
I’m very proud to say that BambooInvoice 0.8.0 is completed and live. The changelog covers it off pretty well. I’d like to very, very gratefully acknowledge Marc Arbour, Micha Schlieper, and Alex Williams. Each helped with energy, ideas, and translation efforts.
The big thing about this version of Bamboo, aside from squashing every known bug, was the inclusion of Internationalization. It once again highlighted the flexibility of a good PHP framework. Now that the work has been done, dropping in new languages is a snap. Currently Bamboo runs in English, French and German. Additional languages are always welcome.
Also of note is the new reports feature I wrote about earlier. It seems to be giving me some grief in Safari. If you’re a javascript guru familiar with Safari’s parser, I’d love if you could take a quick look and see if you can’t nail that down. And don’t even get me started about Internet Explorer… for what its worth, Bamboo does run in IE flawlessly.
0.8.1 will focus on any bug fixes that are found on release (there’s bound to be 1 or 2), and then 0.8.2 will focus on code cleanup. Bamboo was written before CodeIgniter even had models, and there are lots of inconsistencies, loose code and other items I want to address. 0.8.3 will start adding in new features again, as we work towards a completed 1.0 release.
One thing on my radar is to drop DOMPDF as the PDF library. I’ve been happy-ish with it, but development seems to have stagnated, and it seems to be a bit of a memory pig, often causing the “Allowed memory size of xxxxxxx bytes exhausted” error (which I’ve added a specific note about in the installation guide). The Zend PDF library seems nice. Jonathan Snook had an interesting article on implementing Zend components into CakePHP. He talks about a vendor() helper, but it looks to me like CodeIgniter could do the same thing with relative ease.
include(APPPATH . '/zend/pdf.php');
In fact, the prolific Dan Freak has already written about Using Zend Framework components in CodeIgniter, so its not like I have any excuses here.
BambooInvoice, “the little project that could”, has taken on a life of its own. If you use it please drop me a line or leave a comment here. I’d love to hear how you think it helps you, or what it would need to be able to do that.

Jonathan Snook wrote on
Indeed, the vendor() function is just a convenient way to load in a file from the vendors folder of CakePHP (of which there are two, as you can have a central cake repository for all cake apps on the same server and then a project specific vendor folder).