Search…
⌃K
Links

Introduction

Get acquainted with Aurelia, the documentation, and how to get started.

What is Aurelia?

Aurelia is an open-source, JavaScript, front-end platform designed to enable you to easily build even the most demanding web, mobile, or desktop applications. Aurelia stands out for its commitment to open web standards and no-nonsense, get-out-of-your-way conventions that enable vanilla JavaScript development. Of course, Aurelia is also packed full of features, performs at the highest standards, is extensible to its core, and supports a fully testable component-oriented design. But you knew all that already, didn't you?
😎
To get started, jump to our Quick Start Guide, or read on to get more of an overview.

Why choose Aurelia?

There are many frameworks to choose from today. We believe that Aurelia provides a fresh and exciting approach to front-end development with power and flexibility unmatched by other options. That said, we recognize that each team and each project has different needs. You might find Aurelia to be the right choice for you if...
  • You want an all-in-one solution - Aurelia provides core capabilities like dependency injection, templating, routing and pub/sub, so you don't have to piece together a bunch of libraries to build an application. On top of this rich core, Aurelia also provides many additional plugins for internationalization, validation, modal dialogs, UI virtualization and much more. You also don't have to cobble together a bunch of different tools. Aurelia provides a CLI for generating and building projects, a browser plugin for debugging and a VS Code plugin as well. Yet, you're not forced to use any of these as Aurelia is structured to enable you to swap out any detail, even down to the templating/binding engine, to guarantee maximum flexibility.
  • You need blazing rendering speed and great memory efficiency - In 3rd-party benchmarks, Aurelia renders faster than any other framework today. Because of its batched rendering and observable object pooling, Aurelia utilizes less memory and causes less GC churn than other frameworks.
  • You require the safety of uni-directional data-flow, but need the productivity of data-binding - Aurelia features an observable-based binding system that uses uni-directional data-flow by default, pushing data from your model into your view via a highly efficient, DOM-batching mechanism. Two-way binding can also be leveraged for HTML form controls, allowing for increased developer productivity, without sacrificing the safety of uni-directional flow or of component encapsulation.
  • You desire API stability amidst a turbulent JavaScript landscape - Aurelia follows Semver and works hard not to make breaking changes to its APIs. We're proud to say that we've continued to innovate and advance the platform while no breaking changes to core framework APIs since our 1.0 release on July 27, 2016.
  • You value high standards compliance - Focused on ES2015+ and W3C Web Components while avoiding unnecessary abstractions; Aurelia provides the cleanest and most standards-compliant component model you'll find anywhere.
  • You think a framework should "get out of your way" - Aurelia is the only framework that lets you build components with plain, vanilla JavaScript/TypeScript. The framework stays out of your way, so your code remains clean and easy to evolve over time.
  • You like programming models that are easy to learn and remember - Because of its simple, consistent design, developers are able to learn a very small set of Aurelia patterns and APIs while unlocking limitless possibilities. Simple conventions help developers follow solid patterns and reduce the amount of code they have to write and maintain. This all results in less fiddling with the framework and more focus on the application.
  • You prefer a platform that integrates well with other frameworks and libraries - Because of the extensible design of Aurelia and its strict adherence to web standards, it's easy to integrate Aurelia with any 3rd party library or framework, including jQuery, React, Polymer, Bootstrap, MaterializeCSS and many more.
  • You love or want to be a part of open source - Aurelia is open-sourced under the MIT license and doesn't add or remove special clauses or conditions to the license. We're proud of the work our community has done together, and we'd love you to join in and help us make Aurelia better for everyone.
  • You thrive on being part of a welcoming community - With an active core team and welcoming Discord server, Aurelia has an amazing community. Our core team and community love to welcome new developers, and we all work hard to help each other succeed.

Using the Docs

Welcome to the Aurelia docs! This is where you will find guides, tutorials, API documentation, examples, resources, and more. We recommend that you begin your journey in the "Getting Started" section with the Quick Start Guide where you will learn to build your first application and be introduced to the basics of Aurelia. After you complete the Quick Start, you should continue reading through the "Getting Started" section where you will learn the bulk of what is needed to get up and running with your own apps. Next, the "App Basics" section is filled with a variety of topics to help you begin to use Aurelia on a regular basis.
Once you feel more comfortable using Aurelia, the "Advanced Scenarios" section covers performance optimization, large-scale projects, UI architecture, and more. There is also a detailed "API" reference for all of Aurelia's classes, methods, and properties. However, it is likely that you will find that you will not need the raw API documentation as much as with other frameworks or libraries since Aurelia focuses on conventions and vanilla JavaScript. Instead, you might find the "Examples" section more helpful since it includes code samples for common scenarios that can be copied and pasted into your own app. Also, the "Resources" section includes a basic FAQ, information about browser support, versioning, comparisons to other frameworks, and various other information you might find useful.
If you happen to find anything in the documentation that is incorrect or missing, every page has an "Edit on GitHub" link that you can use to easily report or correct the issue.

How to Be Part of the Community

As you become more and more familiar with Aurelia, perhaps you will even come up with something that you would like to share with the community.
🎉
The Aurelia team welcomes any contributions that you feel would be beneficial to others in the community. If that is the case, check out the "Community Contribution" section. We also welcome any feedback or suggestions that will help improve Aurelia and enrich the community. Check out the "Contributor Guide" for details about the contributing process and how to contact us.

Where To Begin

You're in the right place. If you are just getting started with Aurelia, we highly recommend that you read through our Quick Start Guide. It will show you how to create a project and build your first components using Aurelia's powerful templating system.