PanGu 盘古
The name comes from the creator of universe in ancient chinese mythology.
以中国古代神话中创世神命名
What PanGu Is? 盘古是什么?
- A Normal form of framework code. 框架代码范式。
- A general solution for building website applications. 构建网站应用的通用解决方案。
- Meeting the core challenges of building high-performance websites. 应对构建高性能网站的核心挑战。
- Solid and less dependent framework code. 坚实少依赖的框架代码。
- Enhancements based on springboot. 基于springboot进行增强。
- Out of the box and easy to use. 开箱即用且易于使用。
- Convenient for secondary development and expansion. 便于二次开发与扩展。
- Exploration of reactive programing and coroutines. 对响应式与协程的探索。
Structure
.
├─pangu-common (base code 基础代码)
├─pangu-core (frame code 框架代码)
├─pangu-web (web code 网站基础代码)
├─pangu-spring-boot-starter (starter for pangu 盘古starter)
├─pangu-ready-spring-boot-starter (starter for pangu and more enhancements 封装盘古与更多增强starter)
└─pangu-test (integrated test code 集成测试代码)
Feature
Website Enhancements | OpenApi UI | Api Log | More
网站增强特性 | 接口UI | 接口日志 | 更多
PanGu has already added these starters below up. And there's gonna be more.
盘古已经引入了下面这些starter。并且还会有更多。
pangu-spring-boot-starter ---> power to make web development sweet
springfox-boot-starter ---> openapi doc for web interfaces
knife4j-spring-ui ---> nice ui for openapi doc
logbook-spring-boot-starter ---> record all requests and responses in an efficient way
Getting Started
1. Add dependency(Must). 添加依赖(必须)。
Gradle
implementation 'com.yuebaix:pangu-ready-spring-boot-starter:0.0.1'
Maven
<dependency>
<groupId>com.yuebaix</groupId>
<artifactId>pangu-ready-spring-boot-starter</artifactId>
<version>0.0.1</version>
</dependency>
2. Manage dependencies(Recommend). 依赖管理(推荐)。
For gradle:
- Copy pangu-ready-denpendencies.gradle to your local src root path.
- Rename it to denpendencies.gradle.
- Then apply it.
apply from: "${rootDir}/denpendencies.gradle"
Notice:
- Rely on 'io.spring.dependency-management' gradle plugin,依赖'io.spring.dependency-management'插件。
- Built with SpringCloud Hoxton. But pangu-ready-denpendencies-greenwich is also provided. 使用SpringCLoud Hoxton构建,但是也提供了SpringCloud Greenwich版依赖的支持。
For maven:
Sadly there's no plan to support it. You could build one with maven dependencyManagement. If you want to contribute. Let me know. 并没有长期计划支持maven。你自己可以用maven dependencyManagement构建一个。如果你有兴趣贡献代码,请联系我。
3. Config to meet your flavor(Unnecessary). 配置一下满足你的口味(非必须)。
Here's the default configuration. 下面是默认的配置
pangu.starter.enabled=true
pangu.starter.ctxHolder.enabled=true
pangu.starter.banner.enabled=true
pangu.starter.banner.springboot.enabled=false
pangu.starter.banner.pangu.enabled=true
pangu.readystarter.enabled=true
pangu.readystarter.swagger.enabled=true
pangu.readystarter.logbook.enabled=true
pangu.readystarter.logbook.config.obfuscate-body-params=token,password,mobile,email
4. Kickstart. 启动。
Run your springboot application. Console output will look like below. 启动你的Springboot应用。控制台输出会像下面这样。
😉
5. Enjoy. 愉快玩耍吧。Roadmap
LICENSE
Maintainers
⭐
Give a Star! If you like or are using this project to learn or start your solution, please give it a star. Thanks!
觉得不错的话,别忘 star
Changelog
Date | Version | Description |
---|---|---|
2021-09-20 | 0.0.1 | first release 第一次发布 |
2021-09-04 | 0.0.1-SNAPSHOTT | init project 项目初始化 |