Reahl features

The best way to get a feel for what Reahl is, is to take a tour of some of its features. Here is a quick description of some, with links to examples.

Work on a conceptual level

Work in terms of the high-level concepts you want to think about. The low-level implementation details are hidden and dealt with behind the scenes.

See example.

Deal with user input - once and only once

Define input validation in one place, and with minimal effort. It is no longer necessary to let these tasks complicate an otherwise simple web application.

See example.

Layout

Get a canned look and programming support for layout: Positioning elements on a web page or having to design what they look like are problems which a programmer should not need to solve repeatedly.

See example.

Reacting to user events

Structure page flow neatly: A summary of the pages comprising your web application and how users can be transitioned amongst them is explicitly programmed as part of a Reahl application.

See example.

Persistence

Existing, mature Python tools for dealing with persistent models of your problem domain are integrated with Reahl.

See example.

Access control

Hide or grey out certain user interface elements in response to changing user rights or other domain-specific access control rules.

See example.

Security considerations

Take comfort in the knowledge that the access control rules you specify are not only used for user convenience in the browser, but are also enforced server side to guard against malicious users who manipulate HTML or JavaScript.

Read more.

Internationalisation

Customise your system to display user interface elements differently, depending on the local language and customs of a user.

See example.

Off-the-shelf functionality

Build separate re-usable components that contain end-user functionality complete with user interfaces and re-use these components in other web applications. Using such components, you don’t have to re-write every application from scratch.

Read more.

Tool support

Reahl includes command line tools for various common tasks needed in a development or production environment. For the programmer, there is also scaffolding to help with testing.

Read more.