StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Application & Data
  3. Frameworks
  4. Javascript Mvc Frameworks
  5. AngularJS vs Durandal vs Ember.js

AngularJS vs Durandal vs Ember.js

OverviewDecisionsComparisonAlternatives

Overview

Ember.js
Ember.js
Stacks1.6K
Followers865
Votes775
GitHub Stars22.6K
Forks4.2K
AngularJS
AngularJS
Stacks61.5K
Followers44.5K
Votes5.3K
GitHub Stars59.0K
Forks27.3K
Durandal
Durandal
Stacks31
Followers36
Votes20
GitHub Stars1.7K
Forks371

AngularJS vs Durandal vs Ember.js: What are the differences?

  1. Architecture: AngularJS follows the MVVM (Model-View-ViewModel) architecture, Durandal uses the MVP (Model-View-Presenter) pattern, while Ember.js uses the MVC (Model-View-Controller) pattern. This difference influences how data is managed and how components interact with each other in the application structure.

  2. Data Binding: AngularJS provides two-way data binding, meaning changes in the model get automatically reflected in the view and vice versa. Durandal and Ember.js primarily offer one-way data binding, where changes in the model do not automatically reflect in the view unless explicitly programmed to do so.

  3. Routing: AngularJS has powerful in-built routing capabilities, allowing developers to define routes and control navigation seamlessly within the application. Durandal and Ember.js also provide routing features, but they may require additional configurations or plugins to achieve the same level of functionality as AngularJS.

  4. Community Support: AngularJS has a larger and more active community compared to Durandal and Ember.js. This community support results in more extensive documentation, plugins, and resources available for developers using AngularJS, making it easier to find solutions to common problems and receive assistance when needed.

  5. Flexibility: AngularJS offers flexibility in terms of choosing different libraries and tools within the Angular ecosystem to build applications. Durandal, although flexible, may be more opinionated in its approach to application development. Ember.js, on the other hand, provides a more structured and opinionated framework, making it easier for developers to follow best practices but limiting flexibility in some cases.

  6. Learning Curve: AngularJS has a steeper learning curve compared to Durandal and Ember.js due to its complex concepts such as directives, scopes, and services. Durandal is relatively more straightforward to learn for developers familiar with the MVVM pattern, while Ember.js strikes a balance between complexity and ease of use, providing a comfortable learning curve for most developers.

In Summary, AngularJS, Durandal, and Ember.js differ in architecture, data binding, routing, community support, flexibility, and learning curve, influencing how developers approach and build web applications in each framework.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Ember.js, AngularJS, Durandal

Simon
Simon

Senior Fullstack Developer at QUANTUSflow Software GmbH

Apr 22, 2020

DecidedonVuetifyVuetifyVue.jsVue.jsNuxt.jsNuxt.js

Our whole Vue.js frontend stack (incl. SSR) consists of the following tools:

  • @{Nuxt.js}|tool:7304| consisting of @{Vue CLI}|tool:9559|, @{Vue Router}|tool:6932|, @{vuex}|tool:6705|, @{Webpack}|tool:1682| and @{Sass}|tool:1171| (Bundler for @{HTML5}|tool:2538|, @{CSS 3}|tool:6727|), @{Babel}|tool:2739| (Transpiler for @{JavaScript}|tool:1209|),
  • Vue Styleguidist as our style guide and pool of developed @{Vue.js}|tool:3837| components
  • @{Vuetify}|tool:6163| as Material Component Framework (for fast app development)
  • @{TypeScript}|tool:1612| as programming language
  • @{Apollo}|tool:5508| / @{GraphQL}|tool:3820| (incl. @{GraphiQL}|tool:7879|) for data access layer (https://apollo.vuejs.org/)
  • @{ESLint}|tool:3337|, @{TSLint}|tool:5561| and @{Prettier}|tool:7035| for coding style and code analyzes
  • @{Jest}|tool:830| as testing framework
  • @{Google Fonts}|tool:2652| and @{Font Awesome}|tool:3244| for typography and icon toolkit
  • @{NativeScript-Vue}|tool:9623| for mobile development

The main reason we have chosen Vue.js over React and AngularJS is related to the following artifacts:

  • Empowered HTML. Vue.js has many similar approaches with Angular. This helps to optimize HTML blocks handling with the use of different components.
  • Detailed documentation. Vue.js has very good documentation which can fasten learning curve for developers.
  • Adaptability. It provides a rapid switching period from other frameworks. It has similarities with Angular and React in terms of design and architecture.
  • Awesome integration. Vue.js can be used for both building single-page applications and more difficult web interfaces of apps. Smaller interactive parts can be easily integrated into the existing infrastructure with no negative effect on the entire system.
  • Large scaling. Vue.js can help to develop pretty large reusable templates.
  • Tiny size. Vue.js weights around 20KB keeping its speed and flexibility. It allows reaching much better performance in comparison to other frameworks.
5.13M views5.13M
Comments
John Clifford
John Clifford

Software Engineer at CircleYY

Jun 8, 2020

Decided

I used React not just because it is more popular than Angular. But the declarative and composition it gives out of the box is fascinating and React.js is just a very small UI library and you can build anything on top of it.

Composing components is the strongest asset of React for me as it can breakdown your application into smaller pieces which makes it easy to reuse and scale.

455k views455k
Comments
José
José

Head of Engineering & Development at Chiper

Jun 23, 2020

Decided

It is a very versatile library that provides great development speed. Although, with a bad organization, maintaining projects can be a disaster. With a good architecture, this does not happen.

Angular is obviously powerful and robust. I do not rule it out for any future application, in fact with the arrival of micro frontends and cross-functional teams I think it could be useful. However, if I have to build a stack from scratch again, I'm left with react.

592k views592k
Comments

Detailed Comparison

Ember.js
Ember.js
AngularJS
AngularJS
Durandal
Durandal

A JavaScript framework that does all of the heavy lifting that you'd normally have to do by hand. There are tasks that are common to every web app; It does those things for you, so you can focus on building killer features and UI.

AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade and friends!) as your template language and lets you extend HTML’s syntax to express your application’s components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding.

Durandal is a cross-device, cross-platform client framework written in JS and designed to make Single Page Applications (SPAs) easy to create and maintain.

Creating web apps;Building UI
-
JS & HTML modularity; Simple app lifecycle; Eventing, modals, message boxes, etc; Navigation & screen state management;Consistent async programming w/ promises; App bundling and optimization; Use any backend technology; Built on top of jQuery, Knockout & requireJS; Integrates with popular CSS libraries such as Bootstrap and Foundation; Make your own templatable and data-bindable widgets; Fully testable
Statistics
GitHub Stars
22.6K
GitHub Stars
59.0K
GitHub Stars
1.7K
GitHub Forks
4.2K
GitHub Forks
27.3K
GitHub Forks
371
Stacks
1.6K
Stacks
61.5K
Stacks
31
Followers
865
Followers
44.5K
Followers
36
Votes
775
Votes
5.3K
Votes
20
Pros & Cons
Pros
  • 126
    Elegant
  • 97
    Quick to develop
  • 83
    Great mvc
  • 82
    Great community
  • 73
    Great router
Cons
  • 2
    Too much convention, too little configuration
  • 2
    Very little flexibility
  • 1
    Hard to use if your API isn't RESTful
  • 1
    Hard to integrate with Non Ruby apps
Pros
  • 889
    Quick to develop
  • 589
    Great mvc
  • 573
    Powerful
  • 520
    Restful
  • 505
    Backed by google
Cons
  • 12
    Complex
  • 4
    Dependency injection
  • 3
    Event Listener Overload
  • 2
    Hard to learn
  • 2
    Learning Curve
Pros
  • 3
    Easy to learn
  • 3
    UI components
  • 2
    Works IE8 >
  • 2
    Easy to start
  • 2
    Quick to develop
Integrations
Node.js
Node.js
Bootstrap
Bootstrap
JavaScript
JavaScript
Bootstrap
Bootstrap
Foundation
Foundation

What are some alternatives to Ember.js, AngularJS, Durandal?

jQuery

jQuery

jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.

React

React

Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.

Vue.js

Vue.js

It is a library for building interactive web interfaces. It provides data-reactive components with a simple and flexible API.

jQuery UI

jQuery UI

Whether you're building highly interactive web applications or you just need to add a date picker to a form control, jQuery UI is the perfect choice.

Backbone.js

Backbone.js

Backbone supplies structure to JavaScript-heavy applications by providing models key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing application over a RESTful JSON interface.

Svelte

Svelte

If you've ever built a JavaScript application, the chances are you've encountered – or at least heard of – frameworks like React, Angular, Vue and Ractive. Like Svelte, these tools all share a goal of making it easy to build slick interactive user interfaces. Rather than interpreting your application code at run time, your app is converted into ideal JavaScript at build time. That means you don't pay the performance cost of the framework's abstractions, or incur a penalty when your app first loads.

Angular

Angular

It is a TypeScript-based open-source web application framework. It is a development platform for building mobile and desktop web applications.

Aurelia

Aurelia

Aurelia is a next generation JavaScript client framework that leverages simple conventions to empower your creativity.

Flux

Flux

Flux is the application architecture that Facebook uses for building client-side web applications. It complements React's composable view components by utilizing a unidirectional data flow. It's more of a pattern rather than a formal framework, and you can start using Flux immediately without a lot of new code.

Famo.us

Famo.us

Famo.us is a free and open source JavaScript platform for building mobile apps and desktop experiences. What makes Famo.us unique is its JavaScript rendering engine and 3D physics engine that gives developers the power and tools to build native quality apps and animations using pure JavaScript.

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase