|This article needs additional citations for verification. (March 2014)|
|Original author(s)||Mike Ho, Quasidea Development|
|Initial release||October 18, 2005|
|Stable release||0.4.22 / August 15, 2011|
|Preview release||0.4.21 / July 18, 2011|
|Type||Web application framework|
The framework consists of three main components: a code generator, QForms (OOP generated stateful Ajax- or server-processed webform), QQuery (OOP based SQL query builder) -- all of which can be used independently of each other. The code generator parses an existing relational database structure, and builds an object-relational mapping (ORM), as well as several remote interfaces (SOAP, AJAX) to the ORM. The ORM in Qcodo can be extended to provide user-maintained functionality (via object subclassing). QForms is an ASP.NET-inspired templating engine in which each form element is an object exposing its functionality and state via methods and attributes.
QForms maintain page as well as form state, and include the ability to validate fields, trigger events, and associate AJAX calls. QForms bind tightly to the ORM, allowing developers to rapidly and iteratively change any of three components in the model–view–controller (MVC) architecture with little impact to the other components.
The Qcodo Package Manager (QPM) was introduced starting with Qcodo v0.4.0 to allow community members a much more streamlined and efficient way to post and share modules, enhancements and fixes of the Qcodo development framework with each other. The Qcodo.com website can be used to view user-submitted QPM packages that community members have contributed at the QPM Section of the website.
Qcodo was conceived and developed by Mike Ho, and his company Quasidea Development acts as the central maintainer with dozens of contributors from the Qcodo Community that provide new features and releases via the Qcodo website.
The website, itself, is written in Qcodo and custom developed for the community, including suite of tools like online forums, bug/issue tracking, online showcase and QPM management. It is integrated with GitHub to manage releases of the Qcodo Framework itself. The code for Qcodo.com is also open sourced and available at GitHub as well.
The framework is mature and has been deployed in many production environments in everything from highly trafficked social networks to large Fortune 500 and government organizations, including:
- NASA Online Project Information System
- NASA Exploration Life Support
- Stanford University School of Medicine, Biomedical Informatics Research
- Uloop, the largest student-to-student Classifieds network
- Chess.com, the largest Chess-focused social network
- Academy of Country Music, the official website
- Delo.si, the official website of Delo, the major daily newspaper of Slovenia
The framework has been presented at many conferences across the nation, including the Zend/PHP Conference, the MySQL User's Conference, MySQL's Dev Zone, AjaxWorld conference and expo, and DC PHP. It has over 250,000 downloads from thousands of users spanning over a hundred countries.