Skip to content

bert42/loopback-angular-admin

 
 

Repository files navigation

loopback-angular-admin

This software is not ready for production! It is still being developed and it will change in the future.

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

![Gitter](https://badges.gitter.im/Join Chat.svg)

NPM version Dependencies

Codeship Status for beeman/loopback-angular-admin

wercker status

Build Status

Try it now!

Deploy an instance on your Heroku account to play around with it!

Deploy

Features and implemented projects

TODO:

  • Permissions on user actions (non-admins cannot access advanced functions)
  • permissions on content items (non-admins can only edit own content, etc)
  • Detect if API is online HubSpot/offline?
  • Loading indicators Urigo/angular-spinkit?
  • Map API roles to Narzerus/angular-permission
  • Add tests
  • Add Dockerfile
  • Add Vagrantfile

Tell me what we need more!

Screenshots

Dashboard

Markdown Editor

SweetAlert

File uploads

Events

Installation

Dependencies

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

Checkout this project:

git clone https://github.com/beeman/loopback-angular-admin.git

Install the Node packages:

npm install

Install the Bower packages:

bower install

Run a test to see if all is well:

grunt

Clone, install and run in a oneliner

git clone https://github.com/beeman/loopback-angular-admin.git && cd loopback-angular-admin && npm install && bower install && API_URL=http://0.0.0.0:3000/api grunt && npm start & grunt serve

Running

The project is separated in a server and a client.

Server

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

Client

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

API_URL=http://0.0.0.0:3000/api 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 compose.io and mongolab.com!

Development

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.

Issues

If you have any problems please contact me.

About

Quickly create admin interfaces on a Loopback 2.x API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 54.2%
  • CSS 45.8%