Note: This project is under heavy construction and is not intended for general production use yet. As such, we are not accepting bugs at the moment and documentation is quite lacking.
This is an angular (ngx) based dashboard framework that is inspired by JIRA's dashboard implementation and https://github.com/angular-dashboard-framework/angular-dashboard-framework
The primary projects leveraged:
- ngx - https://angularjs.org/
- ngx-charts (angular based d3 charts) - https://github.com/swimlane/ngx-charts
- Semantic-UI - https://semantic-ui.com/
- ng2-dnd drag and drop - https://github.com/akserg/ng2-dnd
- angular material
- AI Natural Language Processing - The board includes two options for AI, Wit.Ai and IBM Watson. ** Wit.ai - Natural Language Processing site has been integrated via JSONP ** IBM Watson - IBM Watson does not support JSONP so the code relies on a backend implementation of the IBM Watson SDK. I offer sample backend code based on Spring Boot within the comments of the Runtime Service
Features:
- Leverages Angular's dynamic data driven forms approach for gadget property pages and properties - https://angular.io/guide/dynamic-form
- Dynamic component strategy for creating gadget instances during runtime - https://angular.io/guide/dynamic-component-loader
- Faceted gadget search approach leveraging tags
- Support multiple board creation
- Drag and Drop support
- Multiple Data Source/Endpoint management
- Web Socket support
- Completely customizable and configurable
This project was generated with Angular CLI version 1.6.x.
Clone this repository then run npm install
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The app will automatically reload if you change any of the source files.
Run ng generate component component-name
to generate a new component. You can also use ng generate directive/pipe/service/class/module
.
Run ng build
to build the project. The build artifacts will be stored in the dist/
directory. Use the --aot
flag for ahead of time compilation. Please note that after upgrading to Angular 5 the --prod
does not work and throws an out of memory error. See angular/angular-cli#5618
The title of that issue suggests an issue with AOT but in my testing --prod
seems to be the problem.
Run ng test
to execute the unit tests via Karma.
Run ng e2e
to execute the end-to-end tests via Protractor.
Before running the tests make sure you are serving the app via ng serve
.
This project uses the compodoc project : https://github.com/compodoc/compodoc
Run npm install -g @compodoc/compodoc
to install compodoc globally
Run compodoc -p tsconfig.json -n 'NGX Dynamic Dashboard Framework'
to generate the documentation. It will be placed in the documentation folder
Run compodoc -s
to serve up the documentation site at http://localhost:8080
To get more help on the Angular CLI use ng help
or go check out the Angular CLI README.