Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How are AngularJS and AngularUI related to each other?

I wonder what the relationship between AngularJS and AngularUI is?

A quick look at the contributors' list seems to say that both projects are developed by independent teams.

Does anyone know more about the relationship between these two projects?

What's especially interesting is the question whether things provided by AngularUI will (one day) become merged into AngularJS. This would be extremly useful for things such as ui-router.

Anyone know more than me ;-)?

like image 634
Golo Roden Avatar asked Mar 17 '13 23:03

Golo Roden


People also ask

Is Angular and UI are same?

ui-router is a framework which was made outside the AngularJS project to improve and enhance routing capabilities. From the ui-router documentation: AngularUI Router is a routing framework for AngularJS, which allows you to organize the parts of your interface into a state machine.

What is UI sref in AngularJS?

ui-sref stands for UI-Router state reference. It's a way to change states/state params (as defined in using the $stateProvider in a config block using the ui. router module for AngularJS. You can read the ui-sref documentation here.

What is the difference between ngRoute and UI-Router?

The ui-router is effective for the larger application because it allows nested-views and multiple named-views, it helps to inherit pages from other sections. In the ngRoute have to change all the links manually that will be time-consuming for the larger applications, but smaller application nrRoute will perform faster.

What is stateProvider in AngularJS?

$stateProvider is used to define different states of one route. You can give the state a name, different controller, different view without having to use a direct href to a route. There are different methods that use the concept of $stateprovider in AngularJS.


2 Answers

AngularUI is an organization that originally started off as one project to consolidate efforts people were making early on across the entire community to create defacto widgets and directives for AngularJS (like jQueryUI is to jQuery). Although it started off as one project with multiple widget wrappers, it's evolved into an organization with multiple teams and projects with different focuses.

Although we didn't start off with any AngularJS core team members, we have been working very closely with them to improve the AngularJS community and today we have 2 of our team members (Pete Bacon Darwin & Pawel Kozlowski) who have been added to the AngularJS core team.

Some of the projects include:

  • AngularUI (soon to be broken up into 0-dependency utilities and widget wrappers)
  • UI-Bootstrap: A reimplementation of all Bootstrap components in native AngularJS (as per popular demand by both the community and the core team itself)
  • UI-Router: An attempt to create defacto solution to complex/nested routing that we hope to eventually get merged into the core
  • uiBot (UniBot): IRC bot for the #angularjs channel
  • NG-Grid: A SlickGrid-inspired virtual grid solution for AngularJS

We've also been actively talking to Jim Hoskins (the guy behind ngmodules.org) to create an AngularJS-based package distribution and organization system/standards for the community as a whole.

like image 106
ProLoser Avatar answered Sep 24 '22 02:09

ProLoser


Basically AngularJS is the MVC framework itself, while AngularUI is a bunch of UI components built over Angular. Think of in the same way as jQuery and jQueryUI.

There are a few utility directives, like ui-router, ui-keypress and ui-event, but it is mostly about pre-built widgets.

You will see no such widgets in AngularJS project. There is no tab, button, calendar or any other widget. Only the raw directives, resources and tools to allow you to develop anything your project need.

Adding a third related project, while AngularUI uses Twitter Bootstrap layout, there is a project from AngularUI team called UI Bootstrap that is the implementation of Bootstrap components over AngularJS instead of jQuery.

It is possible that some base directive/service, like ui-event or ui-keypress, to become part of the project, but there is no plans, at least not explicity plans, to merge both projects due to its nature. In other words, it's hardly possible that the widgets (ui-calendar, ui-button, ui-date) will be merged.

like image 42
Caio Cunha Avatar answered Sep 25 '22 02:09

Caio Cunha