Skip to content

maestro-server/analytics-front

Repository files navigation

Code Climate Build Status Issue Count Codacy Badge Coverage Status

Maestro Server

Maestro Server is an open source software platform for management and discovery servers, apps and system for Hybrid IT. Can manage small and large environments, be able to visualize the latest multi-cloud environment state.

Demo

To test out the demo, Demo Online

Documentation

Maestro Server - Analytics Front

Analytics Front Application is accountable to expose diagrams to the user:

  • Public/private authorization
  • Expose svgs diagrams
  • Upload private SVGs

arch

Constructed with KrakenJs, we create a lot of middleware and organize by domain.

Core API:

  • Core
  • Authetication
  • Graph

TechStack

  • NodeJs 8.11.
  • MongoDB 3.4
  • RabbitMQ
  • AWS S3 (If using S3 upload)

Connect to:

  • Maestro Analytics
  • Maestro Server App
  • Data App

Setup

Installation by docker

docker run -p 9999:9999  -e "MAESTRO_MONGO_URI=mongodb://mongodb" -e "MAESTRO_MONGO_DATABASE=maestro-client"  maestroserver/analytics-front-maestro

Or by docker-compose

version: '2'

services:
    server:
    image: maestroserver/analytics-front-maestro
    ports:
    - "9999:9999"
    environment:
    - "MAESTRO_MONGO_URI=mongodb://mongodb"
    - "MAESTRO_MONGO_DATABASE=maestro-client"

Dev Env

Configure database and port application in .env file

MAESTRO_PORT=9999
MAESTRO_MONGO_URI='mongodb://localhost'
MAESTRO_MONGO_DATABASE='maestro-client'

Development

Install nodejs, version above 7.6, and mongodb need to be running.

npm install
npm run server

Run all tests or any test type

mocha test/**/*js --reporter spec

gulp test_e2e
gulp test_unit
gulp eslint

Env variables

Env Variables Example Description
MAESTRO_PORT 9999
API_URL http://localhost:8888 Server app Url
NODE_ENV development production
MAESTRO_MONGO_URI mongodb://localhost DB string connection
MAESTRO_MONGO_DATABASE maestro-client Database name
MAESTRO_SECRETJWT XXXX Secret key - session
MAESTRO_WEBSOCKET_SECRET XXXX Secret Key - JWT Websocket connections
MAESTRO_SECRETJWT_PRIVATE XXX Secret Key - JWT private connections
MAESTRO_NOAUTH XXX Secret Pass to validate private connections
MAESTRO_SECRETJWT_PUBLIC XXXX Secret key - same server app
AWS_ACCESS_KEY_ID XXXX
AWS_SECRET_ACCESS_KEY XXXX
AWS_DEFAULT_REGION us-east-1
AWS_S3_BUCKET_NAME maestroserver
MAESTRO_UPLOAD_TYPE S3/Local Upload mode
LOCAL_DIR /artifacts Where files will be uploaded
MAESTRO_TMP $rootDirectory PWD process
ANALYTICS_URL " Application base URL

Contribute

Are you interested in developing Maestro Server, creating new features or extending them?

We created a set of documentation, explaining how to set up your development environment, coding styles, standards, learn about the architecture and more. Welcome to the team and contribute with us.

See our developer guide

Contact

We may be able to resolve support queries via email. Please send me a message here

Donate

I have made Maestro Server with my heart, think to solve a real operation IT problem. Its not easy, take time and resources.

The donation will be user to:

  • Create new features, implement new providers.
  • Maintenance libs, securities flaws, and technical points.

Buy Me A Coffee

Sponsor