frappe is a frontend applications framework.
Univ organizes whole system of one or multiple apps and organizes them.
An app defines layout, consists of several flows and screens, and organizes them.
A layout is a specification with requirements to all the app's screens.
A screen represents a particular not very complex dialogue. A screen consists of a number of widgets and organizes them.
A widget is a dialogue tool to perform some business-related operation. In a dialogue metaphor, widgets are formal sentence generators.
A flow represents a complex dialogue, which consists of several screens and direct transferring between them. In other words, a user flows by the flow.
- Keep diff as small as possible:
- avoid one-liners
- use one line per object property, import/export name, etc.
- Prefer declarative approach:
- use eDSL constructors to construct a correct business need fulfilling function
- Prefer Golang-like error-values over exceptions
- Use
__<name>
pattern for the functions wich are using only together with.bind()