node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org ยป



The goal is to have a starter project which can be used to quickly build an API with a frontend that are easily extended.

NPM version Dependencies

Features and implemented projects




#### Markdown Editor #### SweetAlert



Installation depends on node/npm with grunt and bower installed globally.

Checkout this project:

git clone

Install the Node packages:

npm install

Install the Bower packages:

bower install

Run a test to see if all is well:


Clone, install and run in a oneliner

git clone && cd loopback-angular-admin && npm install && bower install && grunt && npm start & grunt serve


The project is separated in a server and a client.


To run the server you issue the command:

npm start

Or to run it with nodemon (needs nodemon installed globally). This will automatically restart the server when you change its code:

npm run dev


Rebuild the lb-services.js file with the correct API_URL for development.

API_URL= grunt

To run the client you issue the command:

grunt serve

It will open the project in your default browser with livereload enabled. This will take care of reloading the page when you change your code.

Connect to a database

You can specify the URL to the MongoDB database you want to use with the MONGODB_URL environment variable.

MONGODB_URL="mongodb://localhost:27017/loopback-angular-admin" npm start

Set INITDB to true if you want to load the initial dataset, which creates the admin user. The memory database (default) does this automatically.

INITDB=true MONGODB_URL="mongodb://localhost:27017/loopback-angular-admin" npm start

This also works with the free hosted MongoDB instances at and!


For development you'd want to look into yeoman.

The API is built with generator-loopback.

The GUI is built with generator-angular.

These should help you quickly add code to your project. Further details tailored to this project might follow in the future.

Useful commits

These commits might be useful when extending the functionality.


If you have any problems please contact me.