Coder Social home page Coder Social logo

reflectoring / infiniboard Goto Github PK

View Code? Open in Web Editor NEW
18.0 18.0 6.0 7.05 MB

infiniboard a customizable, general purpose project dashboard

Home Page: http://projects.reflectoring.io/infiniboard

License: MIT License

JavaScript 1.19% HTML 3.56% Java 53.49% TypeScript 22.90% CSS 17.42% Shell 1.17% Dockerfile 0.26%

infiniboard's People

Contributors

acetous avatar matthiasbalke avatar pentadrago avatar rudikl avatar thombergs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

infiniboard's Issues

platform independent UML editor

Since UMLed is only available for windows, we should consider switching to an UML editor working for Windows, Mac OS X and Linux.

add testing framework to angular2 frontend

Handle Server Errors

platform-version

  • In case a server responds with an internal server error, an error message should be displayed.

JSON converter for LocalDate objects

The standard conversion of LocalDate objects is making out JSON results big and unreadable. There should be a converter from LocalDate to (maybe) the ISO-Datetime format.

create a list of bower dependencies to package

Currently gulp packages the whole content of bower_components, this is ok for the start, but blowes up the package application. Thats why we should add a list of bower dependencies we like to package with the client.

README.md suggests quartermaster is fully operational after setting up IntelliJ support

Running $ ./gradlew -t classes after cloning repo (as README.md suggests) leads to errors since infiniboard-app has no valid npm configuration.

(Do not know why, :infiniboard-app:node-setup seems to be inserted too late in the dependency hierarchy and is never called.)

$ (cd infiniboard-app && npm install) beforehand fixes the issue.

Also, please add that a Python in [2.5, 3.0) must be available on the system and that gulp-cli should have been installed globally (on npm).

add sonarqube analysis

Add sonarqube analysis to github checks.

Sonarqube should analyze using:

  • Findbugs
  • Checkstyle
  • PMD
  • Jacoco

Automate deployment of gh-pages

Each official CircleCI master build should update the Rest-API docs generated by Spring Rest Doc (PR #103).

idea

  • a deployment key with push access is created at github
  • the private key will be made available for the build machine on circle ci

Implement widget sourceconfig delete function

In the current implementation there is no way to unschedule jobs for a deleted sourceconfig. The task is to extend the job-managerjob so that the job automaticly unschedule updatejobs of deleted sources.

evaluate concourse.ci

evaluate concourse.ci as continuous delivery platform for releases

check following features

  • how to install
  • where to install
  • free open source hosting available?
  • checkout git
  • build harvester, quartermaster, infiniboard-app
  • build PRs (feedback for github)
  • package docker container
  • push docker container to https://hub.docker.com
  • tag releases
  • link releases on github

unit testing exception cases

I just realized that we are checking the messages of exceptions in unit tests (e.g. ). IMO we shouldn't check for exception messages. Instead we should check only the exception type. If we use the same exception type for different error cases we run into problems as these cases can only be detected by parsing the exception messages, which is a bad style.

So instead of using expectedException.expectedMessage("message") we should use expectedException.expect(IllegalArgumentException.class).

Add type to Widget

Add a type to the widget component. With the type the client must be able to distignuish als widgets for rendering and updating.

fix mongo host for Docker container

Currently the docker containers are trying to connect to localhost.

The containers should be able to override the application.properties and connect to host mongo.

running gulp in ib-app raises 28 semantic errors

28 errors are output when cross-compiling TypeScript independent of whether gulp is invoked with or without the dev argument. Problem occurs with gulp 3.9.1 (cli 1.2.2) on node 6.3.1

[23:49:06] Starting 'ts'...
[gulp-typescript] 2300 Duplicate identifier 'PropertyKey'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [8] // Definitions by: Ron Buckton <http://github.com/rbuckton>
[gulp-typescript] 2300 Duplicate identifier 'done'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [11]

[gulp-typescript] 2300 Duplicate identifier 'value'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [12]
[gulp-typescript] 2300 Duplicate identifier 'EPSILON'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [250]     small(): string;
[gulp-typescript] 2300 Duplicate identifier 'MAX_SAFE_INTEGER'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [285]

[gulp-typescript] 2300 Duplicate identifier 'MIN_SAFE_INTEGER'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [292]       * @param mapfn A mapping function to call on every element of the array.
[gulp-typescript] 2300 Duplicate identifier 'flags'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [348]       */
[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [500]
[gulp-typescript] 2300 Duplicate identifier 'size'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [563]

[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [572]     /**
[gulp-typescript] 2300 Duplicate identifier 'size'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [583]

[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [592]       */
[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [607]

[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\es6-shim.d.ts:
> [621]

[gulp-typescript] 2300 Duplicate identifier 'PropertyKey'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [8] // Definitions by: Ron Buckton <http://github.com/rbuckton>
[gulp-typescript] 2300 Duplicate identifier 'done'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [11]

[gulp-typescript] 2300 Duplicate identifier 'value'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [12]
[gulp-typescript] 2300 Duplicate identifier 'EPSILON'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [250]     small(): string;
[gulp-typescript] 2300 Duplicate identifier 'MAX_SAFE_INTEGER'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [285]

[gulp-typescript] 2300 Duplicate identifier 'MIN_SAFE_INTEGER'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [292]       * @param mapfn A mapping function to call on every element of the array.
[gulp-typescript] 2300 Duplicate identifier 'flags'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [348]       */
[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [500]
[gulp-typescript] 2300 Duplicate identifier 'size'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [563]

[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [572]     /**
[gulp-typescript] 2300 Duplicate identifier 'size'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [583]

[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [592]       */
[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [607]

[gulp-typescript] 2300 Duplicate identifier 'prototype'.
> file: typings\browser\ambient\es6-shim\index.d.ts:
> [621]

[23:49:10] TypeScript: 28 semantic errors
[23:49:10] TypeScript: emit succeeded (with errors)

Design Mockup

Creation of a static mockup to:

  • visualize the final dashboard idea
  • define the markup and styling

implement quartermaster APIs

implement the following json APIs using mocked data:

  • api/dashboards - GET - fetch all configured dashboard ids
  • api/dashboards/{dashboardId} - GET - fetch the specified dashboard including all widgets configurations for this dashboard
  • api/widgets/{widgetId} - GET - fetch widget config for specified widget
  • api/widgets/{widgetId} - POST - create a widget
  • api/widgets/{widgetId}/data - GET - fetch the current widget data for specified widget

example json to create a widget:

{
  "title" : "myUrlWidget",
  "sourceConfigs" : [
    {
      "id" : "urlSource",
      "type" : "urlSource",
      "interval" : 1000,
      "configData" :
        {
          "url" : "https://echo.getpostman.com/get?test=123"
        }
     }
  ]
}

Widget IDs are globally unique

error handling for source update jobs

If an error occurs while updating a sourceconfig data, the error must be handled in the widget itself (for example by showing an errorflag for a label) and for the quartermaster (for example by logging the error out). The task here is to evaluate and implement a proper way to handle errors within sourceconfig-update-jobs.

UrlSource: add proper SSL handling

UrlSourceJob ignores SSL certificate validation for now. Preferably it should use an own keystore or the one from the java distribution.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.