Skip to content

hoodiehq-archive/hoodie-admin-dashboard

Repository files navigation

hoodie-admin-dashboard

Build Status

Ember version of the Hoodie Admin Dashboard. Currently lets you log in and out, fetch all the plugin info, display plugin backends, and is ready to handle requests to Hoodie that require authentication. All Ajax requests done through Ember will transmit the bearerToken correctly once the admin has signed in.

Prerequisites

You will need the following things properly installed on your computer.

Installation

  • git clone <repository-url> this repository
  • change into the new directory
  • npm install
  • bower install

Running / Development

This admin dashboard is meant to run in conjunction with an actual Hoodie app, so you'll need to run a Hoodie app locally and then tell Ember where the WWW-endpoint of that Hoodie app is. For example:

This'll handle all requests to the Hoodie API without any CORS trouble or additional config.

Oddities of Note

This app embeds third-party plugin dashboards iframes, the sources of which are provided by the proxied Hoodie API. This only works if the Ember environment variable locationType is set to hash in config/environment.js. Otherwise, Ember will expect a route handler for the iframe src, and that will mess everything up. This means that the app's URLs use hashes.

Working on admin-dashboard-UIKit (needs revision)

Clone git@github.com:hoodiehq/hoodie-admin-dashboard-UIKit.git and do $ npm link in its directory. This will make a global npm package named hoodie-admin-dashboard-UIKit available on your system.

Now go to yourHoodieTestApp/node_modules/hoodie-server/node_modules and do $ npm link hoodie-admin-dashboard-UIKit.

You can now work in your UIKit-folder and see the changes in your admin-dashboard's plugins. Don't forget to $ grunt build the UIKit first.

Working on a plugin (needs revision)

Clone the plugin and do $ npm link in its directory. This will make a global npm package named hoodie-plugin-pluginName available on your system.

If the plugin exists in npm already, you can install it now via $ hoodie install pluginName.

Now go to yourHoodieTestApp/node_modules and do $ npm link hoodie-plugin-pluginName.

If the plugin is new and not installable through $hoodie install, you will have to add it to the package.json manually.

Code Generators

Make use of the many generators for code, try ember help generate for more details

Running Tests

  • ember test
  • ember test --server

Building

  • ember build (development)
  • ember build --environment production (production)

Important: Don't forget to set the environment when building for release, the difference in asset size is immense (the build with --environment production is 950Kb, without it's 12MB).

The app is built into the www folder to match the path in the existing dashboard. Ths path is set in .ember-cli.

Release Process

TBD.

Further Reading / Useful Links