All Projects → abixen → Abixen Platform

abixen / Abixen Platform

Licence: lgpl-2.1
Abixen Platform

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Abixen Platform

Metabase
The simplest, fastest way to get business intelligence and analytics to everyone in your company 😋
Stars: ✭ 26,803 (+4957.17%)
Mutual labels:  analytics, reporting, business-intelligence, data-visualization, dashboard
Poli
An easy-to-use BI server built for SQL lovers. Power data analysis in SQL and gain faster business insights.
Stars: ✭ 1,850 (+249.06%)
Mutual labels:  reporting, business-intelligence, spring-boot, data-visualization, dashboard
Helicalinsight
Helical Insight software is world’s first Open Source Business Intelligence framework which helps you to make sense out of your data and make well informed decisions.
Stars: ✭ 214 (-59.62%)
Mutual labels:  reporting, business-intelligence, data-visualization, dashboard
Micro Company
Rest-full, Hipermedia-based distributed application. Spring boot & cloud. Angular. CQRS. Eventsourcing. Axonframework. Microservices. Docker. CloudFoundry
Stars: ✭ 307 (-42.08%)
Mutual labels:  aws, spring-boot, spring-cloud, architecture
Grafana
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
Stars: ✭ 45,930 (+8566.04%)
Mutual labels:  analytics, business-intelligence, data-visualization, dashboard
Chartbrew
Open-source web platform for creating charts out of different data sources (databases and APIs) 📈📊
Stars: ✭ 199 (-62.45%)
Mutual labels:  analytics, data-visualization, charts, dashboard
Mprove
Open source Business Intelligence tool 🎉
Stars: ✭ 212 (-60%)
Mutual labels:  analytics, business-intelligence, data-visualization, dashboard
Pacbot
PacBot (Policy as Code Bot)
Stars: ✭ 1,017 (+91.89%)
Mutual labels:  aws, cloud, spring-boot, angularjs
Event Stream Processing Microservices
Using Spring Cloud Stream and Spring State Machine to create event-driven microservices
Stars: ✭ 255 (-51.89%)
Mutual labels:  microservices, spring-boot, spring-cloud
Spring Cloud Gateway Sample
Sample Spring Cloud Gateway Application
Stars: ✭ 268 (-49.43%)
Mutual labels:  microservices, spring-boot, spring-cloud
Spring Cloud Netflix
Integration with Netflix OSS components
Stars: ✭ 4,498 (+748.68%)
Mutual labels:  microservices, spring-boot, spring-cloud
tellery
Tellery lets you build metrics using SQL and bring them to your team. As easy as using a document. As powerful as a data modeling tool.
Stars: ✭ 219 (-58.68%)
Mutual labels:  analytics, reporting, business-intelligence
Spring Cloud Kubernetes
Kubernetes integration with Spring Cloud Discovery Client, Configuration, etc...
Stars: ✭ 2,894 (+446.04%)
Mutual labels:  microservices, spring-boot, spring-cloud
Spring Cloud Gateway
A Gateway built on Spring Framework 5.x and Spring Boot 2.x providing routing and more.
Stars: ✭ 3,305 (+523.58%)
Mutual labels:  microservices, spring-boot, spring-cloud
Microservices Platform
基于SpringBoot2.x、SpringCloud和SpringCloudAlibaba并采用前后端分离的企业级微服务多租户系统架构。并引入组件化的思想实现高内聚低耦合,项目代码简洁注释丰富上手容易,适合学习和企业中使用。真正实现了基于RBAC、jwt和oauth2的无状态统一权限认证的解决方案,面向互联网设计同时适合B端和C端用户,支持CI/CD多环境部署,并提供应用管理方便第三方系统接入;同时还集合各种微服务治理功能和监控功能。模块包括:企业级的认证系统、开发平台、应用监控、慢sql监控、统一日志、单点登录、Redis分布式高速缓存、配置中心、分布式任务调度、接口文档、代码生成等等。
Stars: ✭ 3,274 (+517.74%)
Mutual labels:  microservices, spring-boot, spring-cloud
Java Microservices Examples
Java Microservices: Spring Boot, Spring Cloud, JHipster, Spring Cloud Config, and Spring Cloud Gateway
Stars: ✭ 194 (-63.4%)
Mutual labels:  microservices, spring-boot, spring-cloud
Anychart
AnyChart is a lightweight and robust JavaScript charting solution with great API and documentation. The chart types and unique features are numerous, the library works easily with any development stack.
Stars: ✭ 288 (-45.66%)
Mutual labels:  data-visualization, charts, dashboard
Metatron Discovery
Powerful & Easy way for big data discovery
Stars: ✭ 297 (-43.96%)
Mutual labels:  business-intelligence, data-visualization, dashboard
Spring Cloud Zookeeper
Spring Cloud Zookeeper
Stars: ✭ 481 (-9.25%)
Mutual labels:  microservices, spring-boot, spring-cloud
Spring Cloud Bus
Spring Cloud event bus
Stars: ✭ 342 (-35.47%)
Mutual labels:  microservices, spring-boot, spring-cloud

Build Status

What is Abixen Platform

Short introduce

Abixen Platform is a microservices based software platform for building enterprise applications. The main goal of the project is a creation of functionalities through creating particular microservices and integrating by provided CMS.

All you have to do in order to create an entirely new functionality is to implement a new, separated microservice. Now you can register it in Abixen Platform and start using by delivered configuration wizards and CMS. There is also an Abixen Platform API, which allows you to accelerate the process of new microservices creation.

Abixen Platform's organizational division consists of pages and modules. User with appropriate privileges can create any page and select a layout. Finally, add to the page instances of modules deployed on Abixen Platform. Each of the modules can have many instances, configured by different parameters.

One of the most important mechanisms built-in into Abixen Platform is own security system, which ensures a full control access to pages, modules and even the data displayed and used by the modules.

Abixen Platform delivers out of the box functional microservices.

Business Intelligence Service is one of the delivered functional modules.

This module allows to do reporting charts and tables. A business administrator can create the charts and feed it by a following flow:

  • Create a database connection to one of supported databases (H2, MySQL, PostgreSQL, Oracle, MSSQL). Instead of database connection, there is an opportunity to use an excel or CSV file
  • Create a data source using above database connection or file.
  • Add a new business intelligence instance on a page
  • Configure a chart series selecting a data source
  • Set permissions for particular users' roles

Web Content Service is another one of the delivered functional modules.

This module allows to do articles. A business administrator can create articles in two ways:

  • Simple Web Content (just fill out a simple form with rich text editor)
  • Advanced Web Content (using structures and templates)

The spectrum of possible modules developer can create is unlimited. There can be e.g. modules showing data in a tabular way, modules of data entry, where users enter data, edit and present.

The main architectural emphasis was placed on the rapid creation of new modules. Therefore, an original architecture has been implemented based on microservices, which allows to create modules functionally independent of the other elements. When programmer creates a module, compiles only his module and his microservice. This provides a tremendous time saving comparing to monolithic systems.

Technology stack

Abixen Platform Microservices Technology Stack

Architecture overview

One of the biggest advantage is the architecture based on microservices concept. With loosely coupled components, it opens up a possibility of a efficient division of work between development teams and for a simple and inexpensive system maintenance. Creating a new module, a new functionality, a developer must not interfere with the existing source code. He can create a new microservice, being a separate spring boot application. Then, implementing necessary interfaces achieves opportunity to integrate the newly created microservice with Abixen Platform structure. Finally, a business administrator may use it over the platform. Abixen Platform supplies out of the box a few functional modules closed in the Business Intelligence Service and in the Web Content Service. This is a good example, how to create the own microservice. Mentioned services provide mainly visualisation functionalities, such as charts, micro charts, KPIs. As well as a web content management, such as templates, structures, articles. However opportunities to develop data entry modules are still opened! Abixen Platform Microservices Architecture

AWS compatible

Abixen Platform is fully compatible with AWS cloud and utilizes the following services:

  • EC2 - used as a base for hosts running docker in ECS Cluster
  • ALB - modern version of load balancer aligned with microservices architecture topology
  • ECS - container orchestrator and scheduler for all services running as docker containers
  • ECR - private container registry for docker images
  • Route53 - allows to use internal dns names for communication between microservices
  • CloudWatch - used as a central monitoring and logging
  • Elasticache - used internally by Abixen Platform components
  • RDS - database store for all components
  • SES - used for email communication

Abixen Platform AWS Deployment diagram

Logging and monitoring

All containers from Abixen Platform send logs to Elasticsearch via Logstash. You can use Kibana's interface as well. All metrics are exposed on each component with Jolokia and fetched from there using Telegraf. They are sent to InfluxDB and are accessible on Grafana dashboards Abixen Platform Logging and Monitoring

History

Abixen Platform has been started in March 2015 by Mariusz Kumor (see LinkedIn profile). Preliminary the main idea was to learn more about microservices, Spring Cloud stuff and extend knowledge about AngularJS. The project was developing to December 2015 at free time. Substantial part of the time involved analysis and prototypes. Since that day it took some time but now, in October 2016 he decided to publish the source code on GitHub. As well Mariusz Kumor decided to begin further development. The great motivation were flattering words of his friends, also some companies about the project and its ideas.

Known issues

There are some known issues. We work on fixes and improvements.

  • Not all translations are done
  • Multi Visualisation Service needs some user interface improvement and optimization. Also needs more tests.
  • In some places CSS is not perfect
  • There is a small technical debt (non functional issue)

Get it started

The documentation is available under https://github.com/abixen/abixen-platform/wiki page.

We are looking for experienced Contributors

Are you good at Java and / or frontend technologies like AngularJS, CSS, HTML? Or maybe are you an UI/UX expert and you are willing to enhance Abixen Platform's design? Would you like to join geek guys? If so, we are ready to do short but powerful training for you from Abixen Platform. After the training you will be able to develop together with us the amazing Abixen Platform. Just mail us [email protected]. In a message please let us know, why would you like to contribute and what could you bring to the project.

How to contribute to the repository

License

Copyright (c) 2010-present Abixen Systems. All rights reserved.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].