Thanks to hard-working core team of Au2, still going well with it. I just don’t see a need for the other frameworks and you end up with similar problems in those other frameworks.
There is still a big chance of Au2 having the strike potential to take down the other frameworks down a peg because there is still so much in terms of inefficiency of a lot of SPA frameworks and the way they are coded.
I’ve always had just such an easier time working with and teaching Au1 and even Au2.
Aurelia is alive and well. AcumaticaERP, the worlds fastest growing cloud ERP just released the preview version of their new Modern UI based on Aurelia.
By virtue of this there will be hundreds of current developers moving from ASPX WebForms to Aurelia-our developer being one of them.
Nice!
May I ask what you did with all the outdated dependecies though..? We also still use AU1, but since 1 is outdated and 2 does not even have a final version nor “traction” by the community, we are not sure what to do.
I’m not in the code on a daily basis so I don’t know which dependencies are outdated and how they’re handling that. My guess is that Acumatica is just using those outdated dependencies as-is(stability is the main priority). You can download the source code for the latest Preview here(requires Windows): builds.acumatica.com - /builds/
I know four Australian companies using Aurelia in production. Two are already on Aurelia 2. One is migrating a massive 7yo Aurelia 1 app. Another left their v1 app as-is and started a new greenfield project on v2. These teams looked at the other options and still chose to stick with Aurelia. That should tell you something. I also know of a couple of companies over in Europe using it for large-scale projects too (one of them is using it for a mobile application).
Aurelia 2 isn’t dead. We’re nearing a stable release. The big architectural changes are done. The framework is fast, stable, and unopinionated in all the right ways. No runtime magic, no forced patterns, no churn.
In-fact, I would highly recommend migrating to Aurelia 2 now or using it for greenfield projects. Truthfully, Aurelia 2 has been in a usable state for migration and new projects for a long time now. We have avoided the stable tag primarily due to some big core changes (like the async binding refactor work, making router-lite the default router package, etc).
Docs are in great shape. I’ve got another big batch of updates going out soon. Core features are implemented. Bugs have been closed. GitHub activity is constant. We’re not rewriting the framework every 12 months. We’re tightening the bolts.
For anyone having doubts - do not hesitate to use Aurelia 2
Over a year ago decided to use Aurelia 2 in our project, despite having doubts due to obvious reasons. The framework proven to be super stable, the development experience is very smooth and the docs are comprehensive.
There were some major breaking changes in the framework along the way:
TypeScript autoinjection gone due to changes in decorators - however this approach to DI was never explicitly stated to be correct, so might be as well my fault we used it in the first place.
Dialog API
Swapped default “router”
We were affected by all three changes, even took the hard way when it comes to router (instead of just swapping imports, decided to take the occasion and migrate the app to router(-lite))
Frankly speaking, neither of the migrations was too difficult to deal with.
I also occasionally work with a legacy project that still runs Aurelia 1 to this day. I’m impressed with the fact that the list of differences in the surface API and the development workflow between Au1 and Au2 is reasonably short, making it much easier to contribute simultaneously to both Au1- and Au2-based projects. Usually switching between projects based on different generations of frameworks takes much more effort to get used to updated APIs etc.
On a related note, the new docs now have a passionately worded philosophy section inspired by the Ruby on Rails doctrine which outlines what Aurelia is all about, what drives the framework and what it stands for: The Aurelia Philosophy | The Aurelia 2 Docs - it’s designed to be impactful in some parts, provoking in others and serves as a good outline of why you should choose Aurelia over something else.
Over two years later, the recreation is almost finished. The endusers are happy with the results. The first lines of support are happy with the results.
Even the developers are happy. But they are also aware of that Sword of Damocles, hovering over the project. First signs of bigger problems on the horizon. NodeJS version, packages deprecated and/or abandoned. No sign of AU1 updates. No sign of AU2 release. And an upgrade path to AU2 that probably will be way more difficult than running a simple update script.
Looking back to the recreation project, I’m even more in doubt if it was the best step to stick to AU1, or to Aurelia at all, tbh. But just like in the movies: “I WANT to believe”.
And yes. There is nothing that stops me from trying AU2. Or from trying a completely different framework. So I tried AU2, for a couple of personal projects. With aid of AI (OpenAI/Codex), I set up 3 different projects from scratch. In 2 cases, the routing was not set up properly, and luckily the third did run from scratch. I still don’t know what was the issue. But the fact that AI scraping the web, interpreting things like documentation, does not have enough knowledge to set up a default project nor to fix the issues it encounters, does not give me hope…
So. To all good people of Aurelia. To the early adopters, the creators, all the people that have embraced Aurelia as one of the best frameworks from a clear technical view. In this period of hope, is there hope for Aurelia? For AU2 with a proper upgrade path from AU1? Or for AU1 with some updates? With finally that release we are waiting for for so long?
I WANT to believe there is. Merry Xmas and all the best for 2026.
As a developer who goes all the back to Durandal, Aurelia 1.0’s predecessor (and actually further back than that to Caliburn Micro in my WPF days, also from Rob Eisenberg), allow me to respond point by point (and no animosity intended):
Aurelia is a mature framework and has reached a point where development doesn’t have to be as active as it was in the beginning. The Spring Framework is in the same state, and I can assure you that many, many people use it, all the way up to the enterprise echelon.
Ironically, excessive promotion often raises suspicion instead of inspiring confidence. People have access to the web; they can find it. You did.
Activity on Discourse isn’t commensurate with use, which is true of any work product of developers. For many, working with Aurelia doesn’t require spending an equal measure of time asking questions about it. If you look at my time on Discourse, you might be inclined to think I don’t use Aurelia. Far from the truth, more so than most would know.
“Are people building this framework as a job or out of the goodness of their harts [sic]?” Considering what we developers get paid relative to the amount of time it takes to build and develop anything, we’re all doing it out of the goodness of our heart…and to better the world around us, I believe. Money is incidental—it just needs to be enough to pay the bills and provide for a bit of a future.
Rob Eisenberg himself stepped back. So did Ashley Grant. Both a number of years ago, and yet development continues. I don’t think I’ve seen better proof of a solid succession story than what I’ve seen with Aurelia. Take a look at my exchanges with @bigopon . They’ve been a relative few, but they’ve been going on for years now. I own and have read a few times now @dwaynecharrington Dwayne Charrington’s book, and yet here he is on this Discourse…years later.
Let me ask you this: If a team of mechanics had to constantly give your car attention in the form of maintenance and repair, would you be more sanguine about the purchase and ownership of that car, or more concerned? I don’t know about you but I want a car that needs very little of either.
The real question is this: What is our expectation about any framework or library or application? Do we not look forward to the day, anticipate its possibility, that it might finally be what it is—done? QuickBooks Desktop hasn’t seen a substantive update in nearly two decades. I’ve been using it for almost 30 years. So have tens, if not hundreds, of millions of others. I say this light-heartedly about QuickBooks…problem?
I agree with the you make, up to some level. Major thing: AU2 is still in beta. When it is done, make it a release. When things are improved, make it a new version. But it is quiet.
For context, we use AU1 for close to 8 years now. We know it is stable. We know it is mature. No question about that. But now AU2. Is it stable? Some very important changes were proposed (link, link, link). One of them in the last official Beta, 25, as a breaking change.
With one big AU1 project, like I said in my previous post, we really are nearing a crossroad. The obvious path would be AU2. If it had been released, this discussion probably was not even started, or restarted. If more news or updates were communicated, the general feeling would be different.
And I agree. A stable framework does not need many updates. Lack of questions does not mean it is not used.
So if it is stable, why not releasing it? Breaking changes can be necessary in any future release. And are there still fundamental issues open on the roadmap? I can’t imagine, otherwise these would have had more discussion. Or when there are, let us know. Just tell how much needs to be done before it is ready enough. It would help to get the community more vivid.
Atm, the question is “will we continue with Aurelia”. A release will shift it to “will we update to Aurelia 2”. A very important shift in decision making within companies.
To make clear: I really appreciate the work that already has been done by the team. And I do want Aurelia to be successful.
I have been using beta 26 for a while now. Is it not official? I also saw something about beta 27 recently, but it doesn’t seem to be available.
Back in June I moved a fairly large appication from AU1 with Webpack to AU2 and Vite and have no regrets and it has been pure joy to dump Webpack. The only breaking change I have hit was the router name change. That being said, an AU2 release is the first thing on my wish list for the holidays.
I decided to try an experiment over the past couple of days. I started a clean project where I did the makes aurela and fed the project prompts to get going. I’m sure I made some mistakes with prompts, but with Claude Haiku as my agent, Things didn’t often go well. I think I switched Opus and it was better.
I started it as a single component first but as it grew, I wanted to make changes, such as adding a router. This has been a complete disaster. I ran out of credits and I was just trying various agents at that point that were free. What should be a simple setup like navigate to the default route if the data model has not been set has been impossible for any agents to setup.
Basic binding seems to have been lost on the agent as well. It eventually understood dependency injection patterns.
I do not have a lot of experience with ai assistance because I don’t get to use the tools for my day job. so I honestly don’t know if this is normal. I do agree that the agent not handling the router nicely is NOT a good sign. I do personally find the multiple routers confusing. Documentation is hard. I get it. Examples are often the best for me and I still feel this is one area that can have a lot of improvement.
Nice experiment! As mentioned, I did something similar, with OpenAI/Codex. But with Codex interpreting the project I already have, I do have a better feeling of its capability.
However, for AU2 and from scratch, it is not good enough I agree.
Are there any AI-wizkids around who have experience in learning the general AI how it operates? Like specific notes for AI in the help documentation, a clear notification of the renaming of the router? No clue if that’s possible, but all little things might help.
That said. I did something else during the holidays (yes, time to spare ). I let Codex run a complete migration of our AU1+webpack project to AU2+vite.
I gave it an explicit prompt, based on the migration pages, and the comparison page with checklist of AU1 to AU2. It ran for over 2 hours.
It did not do all that was needed. It did not all in detail. But that might also because of my incomplete/incorrect prompt. I still have to do additional analysis to see what is missing and what is needed. .
But with these two things together, especially with AI to help, the migration path might be very much aided with a proper prompt. That too can be a very worthy addition to the help page. Imagine, jest copy and paste, and let the AI do the work for you!
Somewhere next period I will write this into a separate post as well, with the details of my experiment.