# StreamX
**Repository Path**: project_engineer/streamx
## Basic Information
- **Project Name**: StreamX
- **Description**: 一个神奇的框架,让Flink&Spark开发更简单!一站式大数据实时平台.
- **Primary Language**: Scala
- **License**: Apache-2.0
- **Default Branch**: dev
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 382
- **Created**: 2022-03-23
- **Last Updated**: 2022-03-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
Make stream processing easier!!!
**[Official Website](http://www.streamxhub.com)** |
**[Change Log](#)** |
**[Document](https://www.streamxhub.com/docs/intro)**
English | [中文](README_CN.md)
# StreamX
Make stream processing easier
> A magical framework that make stream processing easier!
## 🚀 Introduction
The original intention of `StreamX` is to make stream processing easier. `StreamX` focuses on the management of development phases
and tasks. Our ultimate goal is to build a one-stop big data solution integrating stream processing, batch processing, data warehouse and
data laker.
[](http://assets.streamxhub.com/streamx-video.mp4)

## 🎉 Features
* Scaffolding
* Out-of-the-box connectors
* Support maven compilation
* Configuration
* Multi version flink support(1.12.x,1.13.x,1.14.x)
* All Flink deployment mode support(`Remote`/`K8s-Native-Application`/`K8s-Native-Session`/`YARN-Application`/`YARN-Per-Job`/`YARN-Session`)
* `start`, `stop`, `savepoint`, resume from `savepoint`
* Various companies and organizations use `StreamX` for production and commercial products.
* Flame graph
* Notebook
* Project configuration and dependency version management
* Task backup and rollback
* Manage dependencies
* UDF
* Flink SQL WebIDE
* Catalog、Hive
* Full support from task `development` to `deployment`
* ...


## 🏳🌈 Components
`Streamx` consists of three parts,`streamx-core`,`streamx-pump` and `streamx-console`

### 1️⃣ streamx-core
`streamx-core` is a framework that focuses on coding, standardizes configuration, and develops in a way that is better than configuration by
convention. Also it provides a development-time `RunTime Content` and a series of `Connector` out of the box. At the same time, it
extends `DataStream` some methods, and integrates `DataStream` and `Flink sql` api to simplify tedious operations, focus on the business
itself, and improve development efficiency and development experience.
### 2️⃣ streamx-pump
`streamx-pump` is a planned data extraction component, similar to `flinkx`. Based on the various `connector` provided in `streamx-core`, the
purpose is to create a convenient, fast, out-of-the-box real-time data extraction and migration component for big data, and it will be
integrated into the `streamx-console`.
### 3️⃣ streamx-console
`streamx-console` is a stream processing and `Low Code` platform, capable of managing `Flink` tasks, integrating project compilation,
deploy, configuration, startup, `savepoint`, `flame graph`, `Flink SQL`, monitoring and many other features. Simplify the daily operation
and maintenance of the `Flink` task.
Our ultimate goal is to build a one-stop big data solution integrating stream processing, batch processing, data warehouse and data laker.
* [Apache Flink](http://flink.apache.org)
* [Apache YARN](http://hadoop.apache.org)
* [Spring Boot](https://spring.io/projects/spring-boot/)
* [Mybatis](http://www.mybatis.org)
* [Mybatis-Plus](http://mp.baomidou.com)
* [Flame Graph](http://www.brendangregg.com/FlameGraphs)
* [JVM-Profiler](https://github.com/uber-common/jvm-profiler)
* [Vue](https://cn.vuejs.org/)
* [VuePress](https://vuepress.vuejs.org/)
* [Ant Design of Vue](https://antdv.com/)
* [ANTD PRO VUE](https://pro.antdv)
* [xterm.js](https://xtermjs.org/)
* [Monaco Editor](https://microsoft.github.io/monaco-editor/)
* ...
Thanks to the above excellent open source projects and many outstanding open source projects that are not mentioned, for giving the greatest
respect,Thanks to [Apache Flink](http://flink.apache.org) for creating a great project! Thanks to the [Apache Zeppelin](http://zeppelin.apache.org) project for the early inspiration.
### 🚀 Quick Start
```
git clone https://github.com/streamxhub/streamx.git
cd streamx
./mvnw clean install -DskipTests -Denv=prod
```
click [Document](http://www.streamxhub.com/zh/doc/) for more information
## 👻 Why not...❓
### Apache Zeppelin
[Apache Zeppelin](https://zeppelin.apache.org) is a Web-based notebook that enables data-driven, interactive data analytics and
collaborative documents with SQL, Java, Scala and more.
At the same time we also need a one-stop tool that can cover `development`, `test`, `package`, `deploy`, and `start`.
`streamx-console` solves these pain points very well, positioning is a one-stop stream processing platform, and has developed more exciting
features (such as `Flink SQL WebIDE`, `dependency isolation`, `task rollback `, `flame diagram`
etc.)
### FlinkX
[FlinkX](http://github.com/DTStack/flinkx) is a distributed offline and real-time data synchronization framework based on flink widely used
in DTStack, which realizes efficient data migration between multiple heterogeneous data sources.
`StreamX` focuses on the management of development phases and tasks. The `streamx-pump` module is also under planning, dedicated to solving
data source migration, and will eventually be integrated into the `streamx-console`.
## 🤝 Contributing
[](https://github.com/streamxhub/streamx/pulls)
You can submit any ideas as [pull requests](https://github.com/streamxhub/streamx/pulls) or as [GitHub issues](https://github.com/streamxhub/streamx/issues/new/choose).
> If you're new to posting issues, we ask that you read [*How To Ask Questions The Smart Way*](http://www.catb.org/~esr/faqs/smart-questions.html) (**This guide does not provide actual support services for this project!**), [How to Report Bugs Effectively](http://www.chiark.greenend.org.uk/~sgtatham/bugs.html) prior to posting. Well written bug reports help us help you!
Thanks to [JetBrains](https://www.jetbrains.com/?from=streamx) for supporting us free open source licenses.
[](https://www.jetbrains.com/?from=streamx)
## 💰 Donation
Are you **enjoying this project** ? 👋
If you like this framework, and appreciate the work done for it to exist, you can still support the developers by donating ☀️ 👊
| WeChat Pay | Alipay |
|:----------|:----------|
|
|
|
## 🏆 My sponsors (Coffee Suppliers)
### 💜 Monthly Supplier
Welcome individuals and enterprises to sponsor, your support will help us better develop the project
### 🥇 Gold Supplier
### 🥈 Platinum Supplier
### 🥈 Silver Supplier
### 🏅 Backers
Thank you to all our backers!
## 💬 Join us
[StreamX]((http://www.streamxhub.com/#/)) enters the high-speed development stage, we need your contribution.
