Sometimes it is best to not over complicate things, so we are going to just make some statements about the Humble framework here:
- Humble is an application building framework that, if all features are used, utilizes PHP, JavaScript, and Node.js.
- Humble implements a Model-View-Controller approach, where the Models are (mostly) PHP classes, the Controllers are XML files, and the Views can be anything.
- Humble is built to work with Linux or Windows, Apache, MySQL, MongoDB, and PHP. Node.js isn't a hard requirement, but is needed for some of the advanced features.
- For performance reasons, it is highly recommended to install memcached as well.
- Database access is through a custom ORM called Unity, that is able to perform joins between MySQL and MongoDB. This means you can still use a Relational approach to building your
schema while maintaining the flexibility of a dynamic schema.
- Beyond the request handling as defined above, Humble is also event based, and events can be defined through XML or from within code. Using a graphical workflow editor, it is
possible to define complex set of actions (called workflows) that "listen" for these events. This event handling mechanism is called "The Paradigm Engine".
- Remote Procedure Calls (REST,SOAP,XMLRPC) and "Smart-Endpoints" are done by describing these Integration Points using YaML files. This powerful feature abstracts away the complexities
of integration and to the developer, the remote resource looks like a local function.
- Humble adheres to the "Everything is a Service" philosophy, so when you are ready, it is simple to deploy your application as a MicroService based application, and this lets your
application scale.
- Through many layers of abstraction it is possible to build powerful applications without writing one line of PHP. In fact, it would be fair to say that the Humble Framework is a
collection of conventions where if the developer follows them, they will be able to build more using less code than other frameworks.