Skip to content
The aurelia framework brings together all the required core aurelia libraries into a ready-to-go application-building platform.
Branch: master
Clone or download
EisenbergEffect doc(backers): add two new wood backers
Thank you David and Jon for joining our wood backers!
Latest commit 125b74d Mar 13, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
build chore(build): update conventional change log config Jun 20, 2016
doc doc(all): move images to documentation repo Nov 8, 2018
src fix(FrameworkConfiguration): use private info Jun 21, 2018
test feat(Aurelia): ability to define root with constructor May 31, 2018
config.js feat(config): accepts classes beside module id string May 14, 2018
gulpfile.js chore(all): new build, contrib and lint Feb 6, 2015
karma.conf.js chore(all): update to Babel 6 (ongoing) Mar 15, 2016
package-lock.json chore(all): update package-lock.json Feb 1, 2019
typings.json chore(all): prepare release 1.0.0-beta.2.0.1 Jun 16, 2016


License: MIT npm Version Discourse status Twitter


Aurelia is a modern, front-end JavaScript framework for building browser, mobile, and desktop applications. It focuses on aligning closely with web platform specifications, using convention over configuration, and having minimal framework intrusion. Basically, we want you to just write your code without the framework getting in your way. 😉

This library is part of the Aurelia platform. It contains the aurelia-framework library, which brings together all the required core aurelia libraries into a ready-to-go application-building platform.

Aurelia applications are built by composing a series of simple components. By convention, components are made up of a vanilla JavaScript or Typescript class, with a corresponding HTML template.

export class App {
  welcome = "Welcome to Aurelia";

  quests = [
    "To seek the holy grail",
    "To take the ring to Mordor",
    "To rescue princess Leia"
<!-- app.html -->
    <label for="name-field">What is your name?</label>
    <input id="name-field" value.bind="name & debounce:500">

    <label for="quest-field">What is your quest?</label>
    <select id="quest-field" value.bind="quest">
      <option repeat.for="q of quests">${q}</option>

  <p if.bind="name">${welcome}, ${name}!</p>
  <p if.bind="quest">Now set forth ${quest.toLowerCase()}!</p>

Check out the interactive version of this example on Code Sandbox.

This example shows you some of the powerful features of the aurelia binding syntax. To see further examples, online playgrounds, guides, and detailed API documentation, head on over to

Feeling excited? To quickly get started building your project with aurelia, you can use the aurelia CLI.


You can read the documentation for the aurelia framework here. It's divided into the following sections:

  • Overview : Discover what Aurelia is along with its business and technical advantages.
  • Tutorials : Step-by-step tutorials teaching you how to build your first Aurelia applications.
  • Fundamentals : After you've completed the quick starts, learn more about Aurelia's app model, components, dependency injection and more.
  • Binding: Learn all about Aurelia's powerful, reactive binding engine.
  • Templating: Learn all about Aurelia's powerful templating engine.
  • Routing: Learn how to setup and configure Aurelia's router.
  • Plugins: Learn about Aurelia's officially supported plugins and how to use them, including validation, i18n, http, dialog and state management.
  • Integration: Learn how to integrate Aurelia with various other libraries and frameworks.
  • Testing: Learn all about testing Aurelia apps, including component testing and e2e testing.
  • Server Side Rendering: Learn about Server Side Rendering with Aurelia and how to configure your project.
  • CLI: Learn how to create, build, bundle and test your apps using all your favorite tools, facilitated by the Aurelia CLI.
  • Build Systems: Learn how to use Webpack or JSPM directly for building apps without the Aurelia CLI.

You can improve the documentation by contributing to this repository.

Staying Up-to-Date

To keep up to date on Aurelia, please visit and subscribe to the official blog and our email list. We also invite you to follow us on twitter.


If you have questions, join us in our dedicated discourse forum or submit questions on stack overflow.


We'd love for you to contribute and help make Aurelia even better than it is today! You can start by checking out our contributing guide, which has everything you need to get up and running.


Aurelia is MIT licensed. You can find out more and read the license document here.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.