Warning This project is discontinued, the current ongoing development repository of Petals Cockpit is located here: https://gitlab.com/linagora/petals-cockpit
- This is a web application prototype to drive Petals ESB servers.
- This app provides a starter project that implements best practices in coding, building and testing AngularJS applications using Material design.
- A well-organized component hierarchy starting from
approot
. Components are implemented using directives (no dangling controllers). This provides a good architectural direction until Angular 2.0 becomes available. - Follows AngularJS Style Guide.
- Uses AngularUI Router for flexible routing and nested views.
- Uses Angular Material to implement an interface that conforms to Material design.
- Provides logging and exception handling frameworks with toaster notifications.
- Provides a Gulp based build system – code changes are reflected in the browser immediately.
- Uses Karma, Mocha and Chai for testing.
- Uses Java 8
- Uses Dropwizard (Jetty/Jersey) for serving APIs.
- Uses Quasar/Comsat for improved performances.
WebStorm was used to develop it, but any IDE should work. Everything you need is to...
-
- Install Node
- on OSX, install home brew and type
brew install node
- on Windows, use the installer available at nodejs.org
- On OSX you can alleviate the need to run as sudo by following John Papa's instructions
- on OSX, install home brew and type
- Open terminal
- Type
npm install -g bower gulp
- Install Node
-
Install Git
-
Install MongoDB
-
Install Java 8 and Maven
Clone this repo
$ git clone https://github.com/petalslink/petals-cockpit.git
Open a terminal in your project's directory.
$ cd petals-cockpit
$ npm install
npm install
will install the required node libraries undernode_modules
and then callbower install
which will install the required client-side libraries underbower_components
.
Once the install process is over, you will be able to run your application with Gulp. Run Gulp's default task.
$ gulp serve-dev
Petals cockpit starts and displays an authentication page in your browser :
By default , we use 'admin', 'admin' to authenticate.
During tests, it can be needed to only run the backend (mongod and the API server):
$ gulp serve-mongod serve-java
A dataset is available for testing, it is easy to populate the database suing:
$ gulp serve-mongod populate-demo