Boscli is a framework to create interactive command line interfaces. It is meant to help developers write interactive shells for domain specific tasks. It provides an easy way to wrap and join together command line apps and utilities and create specific shells with security levels and modes, history, auto-completion, and so on. Using this framework any developer can build an interactive command line interface for configuration or monitor an appliance in a few minutes. Boscli can be used as a "glue code" for an appliance's interface or to create a "homogeneous" administration interface for different systems and applications.
Project Essentionals contains functions required to start working on a project immediately. Working example code is included, with proper comments for each function. It can currently: select a record from database and output it as an array; insert a record into a database and return a new row id; update a record in a database and return a response code; delete a record from a database and return a response code; get language-related settings from a project language folder (SQL for this table is included), and do the same for importing application-related settings; generate CAPTCHA on the fly; send email; generate an ExtJS Grid; export any URL to a PDF file; maintain history for all records inserted and updated in a database; set/get sessions messages; and maintain buffers. It also supports mini session management, and error reporting. Other utility functions include replaceaccents, cleanforurl, vrxmlencode, xmlencodecharref, parsedate, unstripslashes writehiddenvar, writehiddenidvar, includejs, includecss, simpleredirect, html2specials, specials2html, getipaddress, and escape_string.
Schedule::Cron is a Perl module that provides a simple but complete cron-like scheduler. It can be used for periodically executing Perl subroutines. The philosophy behind Schedule::Cron is to call subroutines periodically from within one single Perl program instead of letting cron trigger several (possibly different) Perl scripts. Everything under one roof. Furthermore, Schedule::Cron provides a mechanism to create crontab entries dynamically, which isn't that easy with cron. It knows about all extensions (at least all extensions the author is aware of, i.e those of "Vixie" cron) for crontab entries like ranges including 'steps', specification of month and days of the week by name, or coexistence of lists and ranges in the same field. It even supports a bit more (like lists and ranges with symbolic names). It has existed since 1999 on CPAN and is successfully used in many projects.
Test::Class provides a simple way of creating classes and objects to test your Perl code in an xUnit style. Built using Test::Builder, it was designed to work with other Test::Builder-based modules. You can easily package your tests as classes/modules rather than *.t scripts. This simplifies reuse, documentation, and distribution, encourages refactoring, and allows tests to be extended by inheritance.
Sustainable IDE (SIDE) is a set of graphical tools for developers who want to build sustainable software. Sustainable software is software you can extend easily, from a functional or technological point of view. On one hand, this means that when a user has a new requirement, it's easy for any developer to add it, even if the original author is not there anymore. On another hand, if you want to change the underlying technologies, you don't need to rewrite your existing application from scratch. Sustainable Software gives you the freedom to change technology, requirements, or achitecture. This can be achieved thanks to the use of models in a model driven software development (MDSD) paradigm.
MkDoc is a C and C++ code documentation tool. It parse complex code and still produces clear documentation for developers and library users. Unlike most code generation tools, it does not simply write generated code documentation with pieces of user text inside. Instead it handles plain documentation files with sections and other constructs (like Texinfo or LaTeX) and inserts pieces of generated code documentation on request. Thus it does not enforce any way of structuring your document. It has been designed to parse advanced C++ constructs including class inheritance, template specialization, and template instantiation. XHTML, Texinfo, LaTeX, and DocBook output formats are supported.