Features
The following is a list of Marmot's most useful features in no particular order.
- an advanced "presentation layer," by which the application's appearance is kept separate from its business logic. When a developer writes a Marmot application, he invokes generic methods that allow him to place content within a page layout framework provided by a "theme." If, later, a designer makes changes to the theme, those changes will be instantly reflected in all of the applications that make use of the theme, with no intervention required by the programmer. The presentation layer allows the programmer to focus on programming and the designer to focus on design.
- "DataSources" help to alleviate the issues normally associated with managing authenticated resources, like databases and LDAP directories. The primary benefits of using DataSources are centralized administration and ease of use.
- a database abstraction layer that supports Oracle, MySQL, and PostgreSQL and preliminary support for Microsoft SQL Server. This allows for some degree of database portability.
- session support via a database backend. This allows for Marmot to be run in load-balanced environments.
- LDAP authentication. (Marmot is also integrated with Miami University's enterprise Single Sign On (SSO) and authentication system called Web Authentication Services (WAS).)
- LDAP authorization via attribute comparison. (Marmot also works with Miami-specific services like AuthMan.)
- "tabulators" provide an end-to-end method for displaying data in rows and columns, including navigation services, data caching, data input, and summarization.
- end-to-end services for creating a form, validating a form's contents, and harvesting a form's data
- "Query Builder" enables the application's users to perform ad hoc querying with very little work on the part of the developer.