# Ember.js

{% embed url="<https://emberjs.com/>" %}

The five core concepts are Ember’s fundamental building blocks: **routing**, **models**, **services**, **controllers/templates**, and **components**:

![](https://434471908-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LsMtxmH6ixcLmlwG2Vl%2F-Lurd3AsX7GIpG1Ky8qK%2F-LurfgrRrpeZOyUtD8JS%2Fimage.png?alt=media\&token=2edee626-29e9-4089-867a-e9cf08c1d80c)

In its simplest form, an Ember app uses the **routing** layer to resolve, based on the **URL**, a particular **model** which is then handed over to a **controller/template** (which in turn can call **components**) for display and interaction. A **service** may be used to retrieve **models**, for example.

## Useful Links

#### Official documentation of our current version:

{% embed url="<https://api.emberjs.com/ember/3.5/modules/@ember%2Fapplication>" %}

#### Imports cheatsheet:&#x20;

{% embed url="<https://github.com/ember-cli/ember-rfc176-data#contents>" %}

## Staying up to Date

* Newsletter: <https://www.emberweekly.com/>
