The only object that you need from ng-admin is NgAdminConfigurationProvider (often abbreviated nga in all the documentation and examples). Inject this object to the main configuration function:

// declare a new module called 'myApp', and make it require the `ng-admin` module as a dependency
var myApp = angular.module('myApp', ['ng-admin']);
// declare a function to run when the module bootstraps (during the 'config' phase)
myApp.config(['NgAdminConfigurationProvider', function (nga) {
    // continue here

Factory functions

NgAdminConfigurationProvider is a helper that contains factory functions for all the classes you need.

myApp.config(['NgAdminConfigurationProvider', function (nga) {
    // application factory function
    var admin = nga.application('My Admin Backend');
    // entity factory function
    var post = nga.entity('posts')
    // field factory function
    var name = nga.field('name')
    // menu factory function
    var menu =;
    // dashboard factory function
    var dashboard = nga.dashboard();


NgAdminConfigurationProvider also provides the configure() method, which is the last method usually called in an admin configuration. It expects one parameter: an Application instance. It attaches the admin application to the DOM and runs it.

myApp.config(['NgAdminConfigurationProvider', function (nga) {
    var admin = nga.application('My First Admin');
    // more configuation here
    // ...


Lastly, the field() factory provided by NgAdminConfigurationProvider delegates instanciation of fields to third party objects. You can override the result of a call to nga.field(type), or add a new type, by calling registerFieldType() first.

myApp.config(['NgAdminConfigurationProvider', function(nga) {
    nga.registerFieldType('date', require('path/to/MyCustomDateField'))

See the Custom types documentation for more details.

results matching ""

    No results matching ""