aurelia

Topics related to aurelia:

Getting started with aurelia

Aurelia is a modular modern front-end Javascript framework for building browser, mobile and desktop applications built on open web standards. Rather than being an all inclusive framework, Aurelia adopts a feature-per-module approach to its architecture. Any piece of Aurelia is replaceable with a third-party dependency (or removed altogether).

Unlike competing frameworks such as Angular, Aurelia's core philosophy is to abide by official web standards and DOM API's, this ensures more bare-metal performance as it sits closer to native API's and has very little abstraction. Your views are HTML, your view-models are Javascript (or TypeScript) and Aurelia's component model is based on W3C Web Components HTML Templates and ShadowDOM, so your code mirrors that of a real emerging web standard.

Even though Aurelia is a fully-featured single page application framework, the learning curve is a lot lower than existing alternatives like Angular and Ember. Its templating syntax is intuitive and shares similarities with previous frameworks and libraries you might have worked with.

A developer or company might opt to use Aurelia over other solutions because standards matter to them and writing abstract framework-specific boilerplate code does not feel right to you and you're looking for a framework that prefers to let native DOM API's do the work for you.

Aurelia CLI

Value Converters

This section provides an overview of Value Converters in Aurelia. It should detail not only how to create a value converter, but also why you might want to use them and many examples of basic tasks accomplished through the use of a Value Converter.

Value converters can be chained and used alongside other binding features in Aurelia such as Binding Behaviors.

Custom Elements

Templating

Binding

Aurelia CLI Explained

Working with <compose>

Dependency Injection

If injecting more than one class, the order you put them in the @inject() statement does not matter. However, the order they appear in the @inject() statement must match the order of the parameters in the constructor.