Topaz Framework - Technically
PHP is an industry-standard language for web development. It's actively developed and has large user base.
Topaz is a MVC web framework. Object-oriented PHP5 with PDO and SPL. Topaz is a collection of classes with most having defined interfaces or being independent of the rest of the framework.
Database
Latest version of PHP offers significantly improved database access, which we're utilizing. It solves some long-standing problems with safety and efficency.
PDO-based database access (that's PHPs database-independent interface with support for safe prepared statements) with object-relational mapping (ORM) that understands complex object structures and relations.
Most web applications are mostly mediators between the web and the database.
Topaz's ORM is designed to automate most common simple cases, and not get in the way when complex actions are needed.
Topaz's ORM is not ment to be completly transparent and allows use of good old SQL where neccessary.
It doesn't cause maintainance headaches - no detailed config files, no autogenerated code, no hidden fields nor tables are created. Supports multiple parallel database connections within single request.
Controller
Page actions and parameters are handled by Topaz and abstracted to be class methods and their arguments. This makes page code cleaner and re-usable.
All input goes thru type-checking procesures, which automatically load appropriate objects from the database. This greatly improves security and removes repetition from the code.
Controller can re-use page logic for creation of APIs for web services (RPC) and AJAX.
View
All output goes thru templates. Topaz is not tied to any practicular template subsystem - you can use the same application code, without changes, with different template engines and output methods - XSLT, Smarty or XML/JSON for AJAX.
Topaz has helper functions for easy creation of DOM trees, generating XHTML and HTML via XSLT, and classes for generation of Atom and RSS feeds.
Proper forms
Forms are object-oriented and event-based. Forms output supports Web Forms 2.0 which are to become part of HTML standard in the future.
Debugging and testing
Extensive debugging information allows tracing program execution path and gives insight on data used - helps finding problems quickly.
Unicode-aware
Topaz doesn't complicate string handling with support for wide range of code pages. Instead it makes things simple and reliable by using UTF-8 throughout. You won't have problems with foreign languages, names or "funny" characters like proper quotes and dashes.