> For the complete documentation index, see [llms.txt](https://zurassic.gitbook.io/10x-developer/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zurassic.gitbook.io/10x-developer/full-stack-development/ui_domain.md).

# UI

## Optimistic UI

Why? You have 100ms to respond to user input before they notice a lag. [RAIL](https://developers.google.com/web/fundamentals/performance/rail?hl%3Den%23response_respond_in_under_100ms)

How:

* <https://www.smashingmagazine.com/2016/11/true-lies-of-optimistic-user-interfaces/>
* UX: <https://uxplanet.org/optimistic-1000-34d9eefe4c05>
* Meteor: <http://dev.apollodata.com/react/optimistic-ui.html>

## Observer model in Angular

* custom subscribe method in service
* RxJS
* event emitter: <http://stackoverflow.com/questions/36076700/what-is-the-proper-use-of-an-eventemitter>
* store: base-store.ts
* angular event: <http://stackoverflow.com/questions/34700438/global-events-in-angular-2>
