Get the Newsletter

Aurelia CLI, Debug Tools and Microsoft Collaboration

Posted by AureliaEffect on April 21, 2016

The Aurelia team is hard at work preparing for our Release Candidate...but that's not all we're working on. We're always looking for ways to improve tooling, debugging and collaboration with community members and other vendors along the way.

Collaborating with Microsoft

We've actually been collaborating with Microsoft for over a year now. We've worked with the TypeScript team to bring important real-world scenarios to their attention, leading to many improvements to TypeScript and its tooling over the last year. However, that's not the only group within Microsoft that we're working with. We're also working with them on improvements to "New Aurelia Project" from the VS project wizard, improvements to intellisense for Aurelia views, server-side rendering integration, validation and service proxy generation. We've had great interactions so far with Microsoft developers who are not only passionate about open source but also about giving first-class support to Aurelia developers on top of their tools. We're grateful for the collaborative spirit of the Microsoft employees we've been working with and we're excited about what the future holds.

Debug Tools

Have you ever been working on an Aurelia application and had some data that wasn't displaying what you thought? or not displaying at all? Well, we have. So, one of our core contributors, Patrick Walters , started work some time back on a Chrome plugin for debugging binding context data. Eventually, community member Sylvain Hamel jumped in, extended the plugin's capabilities and cleaned up the code. This tool is called "Aurelia Context" and it . It creates a simple debug panel in the Chrome developer tools that provides you with contextual information related to Aurelia.

Aurelia Context For Chrome

This first release has a minimal feature set. We wanted to get it out to you as soon as we could so we could start getting feedback from you on what features we should add next. Give it a try and let us know how we can improve it to make your daily work with Aurelia better.

Aurelia CLI

From the initial alpha of Aurelia until now, we've had two big, recurring issues that have continued to plague us:

  • Getting new developers easily set up to start learning and building applications with Aurelia.
  • Dealing with the complex integration of the multiple 3rd party tools required to create, build and bundle Aurelia applications.

For new developers there's typically a lot of confusion:

Why do I have to install this thing called Gulp to use Aurelia? What is JSPM and why do I need to use that? What's the difference between NPM and JSPM? Why do I need two different package managers? etc.

On top of this confusion, things would often go wrong, not necessarily with Aurelia itself but during the installation and setup of these 3rd party tools. So, developers would be both confused and frustrated before they ever had the chance to write a single line of Aurelia code.

We don't think that's acceptable and we're moving to aggressively deal with these issues.

In order to solve these problems, we're building an Aurelia CLI. It will be the single tool that Aurelia devs need to install. This tool will allow you to create new projects, install plugins, build and bundle applications. The CLI itself will have very few dependencies so that we can control quality and ensure things work for our community. We're pretty early on with the development of the CLI, so it's not quite ready to try out yet. However, we're moving quickly and hope to have a beta soon that you can play with.

Thanks for your patience around tooling. We know it's been frustrating for our community. We've felt the pain too and we're working hard to build a standard solution that our community can rely on going forward. Stay tuned for more news in the coming weeks!