MCPcopy Index your code
hub / github.com/818000/bus

github.com/818000/bus @8.8.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release 8.8.2 ↗ · + Follow
47,634 symbols 140,560 edges 6,307 files 45,498 documented · 96%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

<a target="_blank" href="https://github.com/818000/bus/raw/8.8.2/README.md">EN</a> | <a target="_blank" href="https://github.com/818000/bus/raw/8.8.2/README_CN.md">CN</a>

✨ Project Description

Bus (Enterprise Application/Service Bus) is a foundational framework and service suite; a lightweight enterprise-level application/service framework built on Java 17+, providing standardized service suites and distributed middleware solutions.

Everyone is welcome to visit and explore. Life is short! Write less repetitive code! Please give us a star as a reward~

The goal is to create a comprehensive full-stack technical solution that rapidly implements business requirements, covering foundational frameworks - distributed microservices architecture - continuous integration - automated deployment - system monitoring, and more.

✨ Version Selection

Bus primarily has versions 3.x, 5.x, 6.x, and 8.x, as detailed below:

Java Maven Main Features
Java 8 bus-all:5.x Compiled with java 8
Java 17 bus-all:6.x Compiled with java 17, uses Jakarta EE, compatible with java 11, 17
Java 21 bus-all:8.x Compiled with java 21, uses Jakarta EE, compatible with java 11, 17, 21

✨ Component Information

Status Module Description
[√] bus-all Microservice full aggregation module, containing all business components and common functionalities
[√] bus-auth Unified authentication center, supporting OIDC/OAuth2/SAML protocols, integrated with 15+ mainstream third-party login platforms
[√] bus-base Basic architecture layer, providing entity/service/controller base classes and common business interfaces
[√] bus-bom Dependency management module, unified version control, supporting on-demand component loading
[√] bus-cache Distributed caching service, supporting Redis/Memcached/Hessian multi-level caching solutions
[√] bus-core Core utility library, containing 20+ common utility classes for concurrency/reflection/date/collections
[√] bus-cortex Unified registry and configuration center for API/MCP/Prompt entries, with health probing and namespace isolation
[√] bus-crypto Encryption/decryption component, supporting AES/DES/SM4/MD5 algorithms and national cipher suites
[√] bus-extra Extended functionality package, integrating peripheral services like FTP/QR code/MQ/file processing
[√] bus-gitlab Deep GitLab integration, providing full lifecycle management for CI/CD/repositories/issues
[√] bus-health Health monitoring center, real-time collection of JVM/OS/container/middleware monitoring metrics
[√] bus-http HTTP client wrapper, providing synchronous/asynchronous/reactive three calling modes
[√] bus-image Image processing engine, supporting format conversion/thumbnail generation/OCR recognition
[√] bus-limiter High-performance rate limiting component, supporting token bucket/sliding window/distributed rate limiting strategies
[√] bus-logger Log enhancement module, supporting dynamic log levels/trace ID/sensitive data filtering
[√] bus-mapper MyBatis enhancement tool, providing code generation/multi-tenancy/logical deletion extensions
[√] bus-metrics Production-grade metrics framework, supporting cardinality guard/EWMA rates/SLO tracking/LLM observability
[√] bus-notify Multi-channel notification center, supporting push methods like email/SMS/DingTalk/WeChat Work
[√] bus-office Office document processing engine, implementing Excel/Word/PPT operations based on POI
[√] bus-opencv Computer vision library, wrapping OpenCV to provide image recognition/face detection/video analysis capabilities
[√] bus-parent Parent POM, unified management of dependency versions/build configurations/coding standards
[√] bus-pay Payment aggregation service, integrating 20+ payment channels including WeChat Pay/Alipay/UnionPay
[√] bus-proxy Dynamic proxy tool, simplifying JDK/CGLIB proxy implementation
[√] bus-sensitive Sensitive data masking, providing annotation-based/rule-based data obfuscation solutions
[√] bus-setting Configuration management tool, supporting multi-environment configuration/dynamic refresh/encrypted storage
[√] bus-shade Code generator, one-click generation of basic code like Entity/Service/Mapper
[√] bus-socket Network communication framework, wrapping NIO/AIO to implement TCP/UDP/WebSocket communication
[√] bus-starter SpringBoot starter, auto-assembly of core components and configurations
[√] bus-storage Object storage service, supporting storage solutions like Alibaba Cloud OSS/Tencent Cloud COS/MinIO
[√] bus-tempus Distributed task scheduling, supporting CRON expressions and cluster task coordination
[×] bus-tracer Distributed tracing, integrating Zipkin/Pinpoint for full-link monitoring (in development)
[√] bus-validate Parameter validation framework, extending JSR-303 annotations to support custom validation rules
[√] bus-vortex Reactive gateway, high-performance API gateway built on WebFlux

✨ Function Overview

  1. Java basic utility classes that encapsulate JDK methods for files, streams, encryption/decryption, transcoding, regular expressions, threading, XML, etc., forming various utility classes; Combined with SpringBoot, it encapsulates commonly used tools for on-demand loading, such as mybatis, xss, i18n, sensitive, validate, and other frameworks.

  2. For detailed instructions and usage, please refer to the README in each module.

  3. Spring Boot 4.1 migration notes are available in docs/Spring-Boot-4.1-Migration.md.

✨ Installation & Usage

Maven

<dependency>
    <groupId>org.miaixz</groupId>
    <artifactId>bus-all</artifactId>
    <version>x.x.x</version>
</dependency>

Or use a single component

<dependency>
    <groupId>org.miaixz</groupId>
    <artifactId>bus-xxx</artifactId>
    <version>x.x.x</version>
</dependency>

Gradle

implementation 'org.miaixz:bus-all:x.x.x'

Download

Click any of the following links to download bus-*-x.x.x.jar:

Note The Bus project supports Java 17+. Some modules have not been tested on the Android platform, and we cannot guarantee that all utility classes or methods will work.

✨ Feedback & Suggestions

All kinds of contributions (enhancements, new features, documentation & code improvements, issues & bugs reporting) are welcome.

We welcome various forms of contributions, including but not limited to optimizations, feature additions, documentation & code improvements, and reporting of issues and BUGs.

✨ Design Philosophy

Source code is always the best tutorial. For those who are good at reading source code and debugging, mastering it is effortless. Source code is the most intuitive display of the author's design philosophy, which is also the charm of open source. "Talk is cheap, Show me the code." Open source makes discussions about technical problems more practical. After reading the source code, you will have your own conclusion about it. In the author's view, Bus genuinely reduces the development learning threshold while ensuring high performance and high availability of services. If readers have doubts about the design of certain parts in the source code, you are welcome to communicate with the author.

✨ Project Status

Alt

Extension points exported contracts — how you extend this code

MessageHandler (Interface)
A functional interface for handling incoming Message objects from a Message Queue (MQ) system. Implementations o [9 implementers]
bus-extra/src/main/java/org/miaixz/bus/extra/mq/MessageHandler.java
Provider (Interface)
Represents a cryptographic service provider that extends the core org.miaixz.bus.core.Provider interface. This i [6 implementers]
bus-crypto/src/main/java/org/miaixz/bus/crypto/Provider.java
GpuStats (Interface)
A session handle for sampling dynamic GPU metrics. Obtain an instance via GraphicsCard#createStatsSession(). <h [8 implementers]
bus-health/src/main/java/org/miaixz/bus/health/builtin/hardware/GpuStats.java
AuthorizeScope (Interface)
Unified interface for scope classes across various platforms. This interface defines methods to retrieve the actual scop [31 …
bus-auth/src/main/java/org/miaixz/bus/auth/nimble/AuthorizeScope.java
CortexLifecycle (Interface)
Common lifecycle contract for Cortex runtime components. @author Kimi Liu @since Java 21+ [11 implementers]
bus-cortex/src/main/java/org/miaixz/bus/cortex/magic/runtime/CortexLifecycle.java
Warn (Interface)
This interface defines methods for logging at the WARN level. @author Kimi Liu @since Java 21+ [8 implementers]
bus-logger/src/main/java/org/miaixz/bus/logger/magic/level/Warn.java
Codec (Interface)
Generic codec used to convert items to and from archive payloads. @param item type @author Kimi Liu @since Java 21+ [23 …
bus-office/src/main/java/org/miaixz/bus/office/Bundle.java
Efforts (Interface)
Defines an extension point for custom post-processing of DICOM images. Implementations of this interface can be used to [12 …
bus-image/src/main/java/org/miaixz/bus/image/Efforts.java

Core symbols most depended-on inside this repo

put
called by 2922
bus-core/src/main/java/org/miaixz/bus/core/cache/Cache.java
append
called by 2231
bus-cortex/src/main/java/org/miaixz/bus/cortex/magic/event/CortexChangeLogStore.java
getClass
called by 2175
bus-core/src/main/java/org/miaixz/bus/core/xyz/TypeKit.java
equals
called by 1970
bus-core/src/main/java/org/miaixz/bus/core/center/stream/WrappedStream.java
getSimpleName
called by 1610
bus-core/src/main/java/org/miaixz/bus/core/bean/desc/AbstractBeanDesc.java
debug
called by 1446
bus-logger/src/main/java/org/miaixz/bus/logger/Logger.java
length
called by 1393
bus-core/src/main/java/org/miaixz/bus/core/lang/range/Segment.java
get
called by 1374
bus-core/src/main/java/org/miaixz/bus/core/Loader.java

Shape

Method 41,486
Class 5,121
Interface 557
Enum 470

Languages

Java100%

Modules by API surface

bus-opencv/src/main/java/org/opencv/imgproc/Imgproc.java464 symbols
bus-gitlab/src/main/java/org/miaixz/bus/gitlab/models/Project.java356 symbols
bus-opencv/src/main/java/org/opencv/core/Core.java347 symbols
bus-opencv/src/main/java/org/opencv/core/Mat.java202 symbols
bus-gitlab/src/main/java/org/miaixz/bus/gitlab/models/Constants.java202 symbols
bus-image/src/main/java/org/miaixz/bus/image/Device.java172 symbols
bus-image/src/main/java/org/miaixz/bus/image/galaxy/data/Attributes.java163 symbols
bus-core/src/main/java/org/miaixz/bus/core/text/CharsBacker.java157 symbols
bus-gitlab/src/main/java/org/miaixz/bus/gitlab/hooks/web/EventMergeRequest.java136 symbols
bus-pay/src/main/java/org/miaixz/bus/pay/metric/alipay/AliPayProvider.java129 symbols
bus-core/src/main/java/org/miaixz/bus/core/xyz/DateKit.java128 symbols
bus-core/src/main/java/org/miaixz/bus/core/center/map/concurrent/ConcurrentLinkedHashMap.java125 symbols

Datastores touched

(mysql)Database · 1 repos
mydbDatabase · 1 repos
appDatabase · 1 repos
dbDatabase · 1 repos
miaixzDatabase · 1 repos
cache_dbDatabase · 1 repos

For agents

$ claude mcp add bus \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact