Giter Club home page Giter Club logo

eiffel-store's Introduction

Sandbox badge

eiffel-store

A persistence solution for Eiffel events. This repository is different than Eiffel Vici. This repository accepts live view of Eiffel events. The MongoDB, at backend, has trigger events. Whenever any event is added into the collection named "eiffel-events", the visualization is updated.

[Note]: All the events must be inserted in the collection named "eiffel-events" only one by one. You cannot insert more than one event at one time, due to the fact that it is a live visualization. This is also a major difference between original Eiffel Vici (https://github.com/eiffel-community/eiffel-vici) and Eiffel-store (this repository). Original Eiffel Vici takes a big JSON file full of Eiffel events as an argument and build a one-time visualization which is not a "Live Visualization". This repository takes Eiffel event one by one and build visualization gradually.

Installing

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

  1. Clone the repository and open the shell and go to 'Visualization' folder.
  2. Run the following command in the 'Visualization' folder:
meteor

It can ask to install some nmp plugins, it is fine. Read through the error messages and install the missing plugins. If everything went fine, you will be able to see the app running on the following link:

localhost:3000
  1. Access the local instance of "mongo db" mostly running on 3001 port. The name of DB is "meteor". You can select some GUI tool to access database. If database is empty, follow step number 4.
  2. Create the following four collections (case-sensitive):
eiffel-events
eventfilter
events
eventsequences
tablerows

The app (localhost:3000) is ready to use, but nothing will appear on screen as there are no events in db. You have two options:

  1. Publish your events from CI to RabbitMQ Bus and connect RabbitMQ bus with Eiffel-store through MongoDB. Check the section "Connection to RabbitMQ Server" below.
  2. Copy-paste dummy events (one by one) from JSON file provided in this repository with the named "eiffelevents.json" to mongo db collection name "eiffel-events" in "meteor" database (Check Point Number 3 Above).

Getting Started

The Eiffel-store visualization is live. Insert Eiffel event into the collection named "eiffel-events" and refresh the webpage (localhost:3000) and you will see visualization. Keep inserting the events and visualization will keep linking events.

Connection to RabbitMQ Server

Your CI (e.g., Jenkins or Gerrit) can publish Eiffel events on your RabbitMQ Bus and you can connect RabbitMQ Bus with Eiffel-store by using the a small java code, written by me, on https://github.com/azeem59/rabbitmq-eiffel-store. This is a bridge between RabbitMQ Bus and Eiffel-store. By running this code, you can just publish events on RabbitMQ Bus and it will automatically appear in the Eiffel-store app. This code may have some errors. Please feel free to update the code or write your own bridge between RabbitMQ Bus and Eiffel-store

eiffel-store's People

Contributors

angel0r avatar azeem599 avatar fdegir avatar knobin avatar m-linner-ericsson avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

eiffel-store's Issues

This repo should be archived

Description

We (Eiffel TC) don't see that there are any active maintainers on this repo. Therefore we intend to move it to archived state. See more here: https://docs.github.com/en/repositories/archiving-a-github-repository

If you disagree on this, please make a comment in this issue or contact Eiffel TC about it, on [email protected]. If we don't hear anything within 4 weeks from today this repo will be archived.

cc @eiffel-community/eiffel-store-maintainers

Additional Context

No response

Further links

No response

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.