Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.1.0 beta #3

Merged
merged 2 commits into from
Dec 22, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,6 @@ build/

### VS Code ###
.vscode/

### TURBO ###
./logs
86 changes: 86 additions & 0 deletions README.en-US.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
English | [简体中文](./README.md)

<img src="./docs/logo.png" >

<h2 align="center">Simple · Practical · Leading Edge · Innovation</h2>

<h4 align="center">The latest technologies within the Java and React ecosystems are well-suited for an all-encompassing
solution catering to enterprise-level needs and internet marketing."</h4>

## Background

Turbo is positioned as a rapid development framework built on cutting-edge technologies. Its core aim is to
differentiate itself from commonly used technological frameworks in the market, creating a one-stop solution tailored
for enterprise-level and internet marketing needs, aligning with future trends.

## Target

- 🧃 Developer-friendly, clear code, and high readability.
- 🤖 Reducing operational costs, embracing cloud-native approaches comprehensively, supporting CI/CD, and implementing
robust system monitoring solutions.
- 💪 An all-encompassing solution covering App, iOS, Mini Programs, HarmonyOS, and desktop applications within the entire
ecosystem.
- ❤️User-oriented, featuring minimalist design to reduce redundant actions, increase efficiency, and prevent repetitive
user experiences for enhanced usability.

## Proposed technical architecture (temporary)

<img src="./docs/images/Turbo-Turbo-Architecture.png">

## Technological framework (temporary)

### Back-end

1. JDK21+
2. springboot:3.2+
3. [uno:1.5+](https://github.com/ClearXs/uno)
4. mybatis-plus:3.5.3+
5. postgresql:14+
6. mysql:8+
7. opentelemetry
8. openobserve
9. redis:7+
10. kafka:3.0+
11. xxljob

### Front-end

1. [React](https://zh-hans.react.dev/)
2. [Typescript](https://www.typescriptlang.org/)
3. [Semui](https://semi.design/)
4. [tailwindcss](https://tailwindcss.com/)
5. [vite](https://vitejs.dev/)
6. [react-router](https://reactrouter.com/en/main)
7. [recoil](https://recoiljs.org/)
8. [axis](https://axios-http.com/)

### Mobile-end

1. [React](https://zh-hans.react.dev/)
2. [Taro](https://docs.taro.zone/)
3. [nutui](https://nutui.jd.com/#/)
4. sass
5. [react-router](https://reactrouter.com/en/main)
6. [react-redux](https://react-redux.js.org/)

### Desktop-end

## preview

<table>
<tr>
<td><img src="./docs/images/preview1.png" alt="preview1"/></td>
<td><img src="./docs/images/preview2.png" alt="preview2"/></td>
<td><img src="./docs/images/preview3.png" alt="preview3"/></td>
</tr>
<tr>
<td><img src="./docs/images/preview4.png" alt="preview4"/></td>
<td><img src="./docs/images/preview5.png" alt="preview5"/></td>
<td><img src="./docs/images/preview6.png" alt="preview6"/></td>
</tr>
<tr>
<td><img src="./docs/images/preview7.png" alt="preview7"/></td>
<td><img src="./docs/images/preview8.png" alt="preview8"/></td>
</tr>
</table>

33 changes: 12 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,26 @@
[English](README.en-US.md) | 简体中文


<h1 align="center">Turbo</h1>

<img src="./docs/logo.png" >
<h2 align="center">简约 · 实用 · 前沿 · 创新</h2>

<h4 align="center">基于Java体系,React体系最新技术适合于企业级与互联网营销的一站式解决方案</h4>

## 背景

### 为什么出现Turbo

Turbo的定位是以最新技术来构建的一套快速开发框架,出发点是区别于市面上通用的技术体系,打造一套适合于未来趋势的企业级已经互联网营销的一站式解决方案。


Turbo的定位是以最新技术来构建的一套快速开发框架,出发点是区别于市面上通用的技术体系,打造一套适合于未来趋势的企业级以及互联网营销的一站式解决方案。

Turbo融合各种轻量级的组件进行构建出一套:
## 目标

- 对开发人员友好,代码清晰,可读性强。
- 减少运维成本,全面拥抱云原生,支持CI/CD以及完善的系统监控方案。
- 全生态解决方案,App、IOS、小程序、鸿蒙、桌面应用
- 对用户实用,简约风的设计、减少冗余操作,增加快捷操作,避免出现重复操作等带来用户差体验
- 🧃 对开发人员友好,代码清晰,可读性强。
- 🤖 减少运维成本,全面拥抱云原生,支持CI/CD以及完善的系统监控方案。
- 💪 全生态解决方案,App、IOS、小程序、鸿蒙、桌面应用
- ❤️ 对用户实用,简约风的设计、减少冗余操作,增加快捷操作,避免出现重复操作等带来用户差体验



## 架构
## 技术架构(暂定)

<img src="./docs/images/Turbo-Turbo-Architecture.png">

## 技术体系
## 技术体系(暂定)

### 后端技术体系

Expand All @@ -37,14 +30,12 @@ Turbo融合各种轻量级的组件进行构建出一套:
4. mybatis-plus:3.5.3+
5. postgresql:14+
6. mysql:8+
7. openobserve
8. skywalking
7. opentelemetry
8. openobserve
9. redis:7+
10. kafka:3.0+
11. xxljob



### 前端技术体系

1. 语言:[React](https://zh-hans.react.dev/)
Expand Down
Binary file added docs/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
104 changes: 95 additions & 9 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@
<relativePath/> <!-- lookup parent from repository -->
</parent>

<groupId>cc.allio.uno</groupId>
<groupId>cc.allio</groupId>
<artifactId>Turbo</artifactId>
<version>0.1.0.RELEASE</version>
<version>0.1.0-beta.1.RELEASE</version>
<name>Turbo</name>
<description>Turbo快速开发平台</description>
<url>https://github.com/b6688c/Turbo.git</url>
<url>https://github.com/ClearXs/Turbo.git</url>

<developers>
<developer>
Expand All @@ -36,6 +36,7 @@
<aliyunoss.version>3.15.1</aliyunoss.version>
<minio.version>8.5.7</minio.version>
<okhttp>4.12.0</okhttp>
<opentelemetry.version>1.33.0</opentelemetry.version>
</properties>

<dependencyManagement>
Expand All @@ -47,6 +48,13 @@
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>io.opentelemetry.instrumentation</groupId>
<artifactId>opentelemetry-instrumentation-bom-alpha</artifactId>
<version>1.32.0-alpha</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>

Expand Down Expand Up @@ -88,12 +96,6 @@
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
Expand Down Expand Up @@ -152,6 +154,10 @@
<groupId>cc.allio</groupId>
<artifactId>uno-starter-core</artifactId>
</dependency>
<dependency>
<groupId>cc.allio</groupId>
<artifactId>uno-component-http</artifactId>
</dependency>
<dependency>
<groupId>cc.allio</groupId>
<artifactId>uno-test</artifactId>
Expand Down Expand Up @@ -196,6 +202,86 @@
<artifactId>okhttp</artifactId>
<version>${okhttp.version}</version>
</dependency>
<!-- observability -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-api</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-context</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-logging</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-otlp</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-sdk</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-sdk-common</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-sdk-trace</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-sdk-metrics</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-sdk-logs</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry.instrumentation</groupId>
<artifactId>opentelemetry-spring-boot-starter</artifactId>
<version>1.32.0-alpha</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-common</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-sender-okhttp</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-otlp-common</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-zipkin</artifactId>
<version>${opentelemetry.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-prometheus</artifactId>
<version>1.32.0-alpha</version>
</dependency>
</dependencies>

<build>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
package cc.allio.uno.turbo;
package cc.allio.turbo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.actuate.autoconfigure.tracing.zipkin.ZipkinAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication(scanBasePackages = "cc.allio.uno.**")
@SpringBootApplication(scanBasePackages = "cc.allio.turbo.**", exclude = {ZipkinAutoConfiguration.class})
public class TurboApplication {

public static void main(String[] args) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package cc.allio.uno.turbo.common.cache;
package cc.allio.turbo.common.cache;

import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.context.annotation.Bean;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package cc.allio.uno.turbo.common.cache;
package cc.allio.turbo.common.cache;

import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package cc.allio.uno.turbo.common.cache;
package cc.allio.turbo.common.cache;

public interface CacheName {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package cc.allio.uno.turbo.common.cache;
package cc.allio.turbo.common.cache;

import lombok.AllArgsConstructor;
import lombok.Getter;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package cc.allio.uno.turbo.common.cache;
package cc.allio.turbo.common.cache;

import cc.allio.uno.core.StringPool;
import cc.allio.uno.core.type.Types;
import cc.allio.uno.core.util.JsonUtils;
import cc.allio.uno.core.util.StringUtils;
import cc.allio.uno.core.util.template.ExpressionTemplate;
import cc.allio.uno.core.util.template.Tokenizer;
import cc.allio.uno.turbo.common.util.RedisUtil;
import cc.allio.turbo.common.util.RedisUtil;
import lombok.Getter;
import org.springframework.core.convert.ConversionFailedException;
import org.springframework.core.convert.ConversionService;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package cc.allio.uno.turbo.common.cache;
package cc.allio.turbo.common.cache;

import cc.allio.uno.turbo.common.util.RedisUtil;
import cc.allio.turbo.common.util.RedisUtil;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package cc.allio.uno.turbo.common.cache;
package cc.allio.turbo.common.cache;

import cc.allio.uno.turbo.common.util.WebUtil;
import cc.allio.turbo.common.util.WebUtil;

/**
* 在缓存中设置租户号
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package cc.allio.uno.turbo.common.cache;
package cc.allio.turbo.common.cache;

import org.springframework.cache.Cache;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package cc.allio.uno.turbo.common.cache;
package cc.allio.turbo.common.cache;

import org.springframework.cache.Cache;
import org.springframework.cache.support.AbstractCacheManager;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package cc.allio.uno.turbo.common.constant;
package cc.allio.turbo.common.constant;

import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonValue;
Expand Down
Loading