...
All methods on a domain object must not take any arguments, which will aid testing and reasoning about these domain objects.
Usability & Affordance
These are things that improve the OpenLMIS-UI experience, and include directive, components, and CSS.
Components
Components are popular these days.
Directives
Directives are damn useful for enriching content and workflows.
CSS
Route and data modules should never be allowed to add CSS styles. This could cause issues if one page is supposed to look or act different than another page, but having divergent designs per page makes a UI feel inconsistent (so we should avoid this).
Example Page Load Process
...