Aurelia 2017 Resolutions

Posted by AureliaEffect on January 2, 2017

2017 is going to be a great year for Aurelia and her community. With continued adoption by startups, the enterprise and many industries, we're seeing amazing growth every week. As always, our team is working hard and we've got some great things planned for 2017. Read on to see what we're working on now.

Tools

Accompanying the framework itself, we're continuing to build an amazing ecosystem. A big part of this is tools. Here are six tooling improvements we're working on and expect to see big enhancements in for 2017.

New Chrome Debugger - We're working on a new plugin for Chrome's developer tools. We've had a preliminary tool for some time now but haven't really been happy with it. We've got a completely new implementation we're working on and we expect to have the initial release as soon as next week!

Webpack v2 - We've done the initial work to enable using Aurelia with Webpack 2. However, we're not done. The team is continuing to invest in Webpack going forward, including a major upcoming refresh to our Webpack support. Expect to see that in the near future.

CLI Level Up - In addition to Webpack, we're working to simplify development through our
Aurelia CLI
. The CLI has received great praise for its ability to ease application development and get people started building apps. In 2017 we're taking it to the next level by including integration of Webpack, simplifying dependency installation and supporting targeting other hosts, such as Cordova and Electron. The first new major feature for dependency management should be rolling out in a few weeks.

Hot Module Reload - Have you ever wished that you could make an HTML, CSS or JavaScript code change in your editor and then just see your application instantly update in the browser without refreshing or losing state? Well, that's what our new hot module reload enables. We've got a preliminary version of this up and running and integrated into our forthcoming Webpack update. It enables editing Views, ViewModels, related components (such as ValueConverters and BindingBehaviors) and CSS without reloading the full website. Expect to see major advancements in this area in 2017.

VS Code Plugin - We've recently released
a plugin for VS Code
that adds improved syntax higlighting and basic intellisense for binding commands in HTML. It also adds new color themes to the HTML view. We've got a lot planned for this plugin, including view-model intellisense in HTML and dev-time template validation.

HTML Template Validation - Your transpiler, whether it's Babel of TypeScript, can often provide a bunch of assistance to you to help ensure that your code is correct. However, it's unable to provide any intelligence over your HTML. We've got new tooling that provides template validation to help ensure that you are using valid syntax and solid HTML practices. It's currently
available in a stand-alone library
to use as part of your CI or testing. We're working hard to continue to improve the validation as well as integrate it into our standard project setups, the CLI and our VS Code Plugin.

New Scenarios

As always, we're continuing to work on the core framework. An important aspect of this continued effort, is adding new features and plugins that enable whole new scenarios for our community. There are two big areas that we're focusing on in 2017.

Server-Side Rendering

While most developers don't need server-side rendering for their Aurelia apps, it's still an important feature that enables new scenarios for our community. We began putting the base abstractions in place for this as part of our Beta. Now we are working towards the full implementation. As part of the template validation work mentioned above, we've already got Aurelia running under Node. We're currently working on integrating Aurelia with an Express-based application to render the app on the server, sending back the full HTML to the client, with no client-side JavaScript being necessary. This will enable the use of Aurelia in SEO-critical applications as well as improve load-time performance when intelligently combined with caching strategies. After this basic form of server-rendering is up and running, we'll then extend the Aurelia framework with "pick up and continue" capabilities so that a server-rendered UI can run with full fidelity in the browser from then on.

Aurelia UX

Recently,
we announced that we
. It's called Aurelia UX. While Aurelia is a front-end framework, targeting the software design of your application, Aurelia UX is a user experience framework, dealing mostly with the UI/UX design of your application. We'll be putting major effort into the core capabilities and available components for Aurelia UX this year.

Onward

It has been amazing building Aurelia with our community in 2015 and 2016. However, that was only the beginning. The future is bright and we can't wait to see what you will build in 2017!