Skip to content

Commit a920927

Browse files
authored
Merge pull request #6 from TrueNine/dev
🚀 [release] 0.0.6
2 parents 270e7f8 + 634d2af commit a920927

103 files changed

Lines changed: 8078 additions & 723 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ name: CI
22

33
on:
44
push:
5-
branches: [ main, dev ]
5+
branches: [ main ]
66
pull_request:
7-
branches: [ main, dev ]
7+
branches: [ main ]
88

99
jobs:
1010
test:

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,3 +71,6 @@ logs
7171

7272
### Customs ###
7373
TODO.*
74+
75+
### AI Coder ###
76+
/.claude/

.lingma/rules/project_rule.md

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
# CLAUDE.md
2+
3+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4+
5+
## 框架定位
6+
7+
Compose Server 是一个现代化、模块化的 Kotlin 企业级服务端开发**框架**,而非脚手架。它通过 Gradle 多模块方式,提供安全、数据库、缓存、对象存储、支付、AI 等企业级能力,支持按需集成到任意 Spring Boot 项目中。
8+
9+
## 构建和测试命令
10+
11+
这是一个基于 Gradle 的 Kotlin 多模块项目。
12+
13+
- `./gradlew build` - 构建整个项目
14+
- `./gradlew clean` - 清理构建输出
15+
- `./gradlew publishToMavenLocal` - 发布到本地 Maven 仓库
16+
- `./gradlew versionCatalogUpdate` - 更新版本目录中的依赖版本
17+
- `./gradlew test` - 运行所有测试
18+
- `./gradlew :模块名:test` - 运行特定模块的测试
19+
- `./gradlew spotlessCheck` - 检查代码格式
20+
- `./gradlew spotlessApply` - 自动修复代码格式
21+
22+
## 项目架构
23+
24+
### 模块化结构
25+
26+
本框架采用多模块设计,主要模块包括:
27+
28+
- **shared** - 核心基础组件,包含通用工具类、异常处理、类型定义、统一响应、分页等
29+
- **meta** - 元数据和注解处理器
30+
- **rds** - 数据库相关(Jimmer ORM、CRUD、PostgreSQL 扩展、Flyway 迁移)
31+
- **surveillance** - 监控组件
32+
- **security** - 安全相关(Spring Security、OAuth2、加密解密)
33+
- **oss** - 对象存储(MinIO、阿里云 OSS、华为云 OBS)
34+
- **pay** - 支付模块(微信支付 V3)
35+
- **cacheable** - 多级缓存(Redis、Caffeine)
36+
- **data** - 数据处理(EasyExcel、爬虫、行政区划等)
37+
- **depend** - 特定依赖处理
38+
- **testtoolkit** - 测试工具包
39+
- **gradle-plugin** - Gradle 插件
40+
- **ksp** - Kotlin Symbol Processing
41+
- **sms** - 短信服务(腾讯云短信,短信抽象层)
42+
- **mcp** - AI 能力(LangChain4j、Ollama、智谱 AI)
43+
44+
> 所有模块均可独立集成,推荐组合见下表。
45+
46+
### 推荐模块组合
47+
48+
| 使用场景 | 推荐模块组合 |
49+
|----------------|----------------------------------------|
50+
| 基础 Web API | shared + security-spring |
51+
| 数据库操作 | shared + rds-shared + rds-crud |
52+
| 文件存储 | shared + oss-shared + oss-minio |
53+
| 微信支付 | shared + pay |
54+
| 数据导入导出 | shared + data-extract |
55+
| AI 能力 | shared + mcp |
56+
57+
## 技术栈
58+
59+
- **Kotlin** 2.2.x
60+
- **Spring Boot** 3.5.x
61+
- **Jimmer** 0.9.x
62+
- **Gradle** 9.x
63+
- **PostgreSQL****Redis****Caffeine****MinIO****阿里云 OSS****华为云 OBS**
64+
65+
## 依赖管理
66+
67+
- 统一使用 Gradle Version Catalog(`gradle/libs.versions.toml`)管理依赖版本
68+
- 所有模块版本、groupId 通过根项目统一管理
69+
- 推荐通过 `publishToMavenLocal` 集成本地开发版本
70+
71+
72+
## 代码约定
73+
74+
- 所有模块使用 `kotlinspring-convention` 插件,集成 Spring Boot 与 Kotlin 规范
75+
- 包名格式:`io.github.truenine.composeserver.模块名`
76+
77+
- 代码格式化:使用 Spotless,提交前请运行 `./gradlew spotlessApply`
78+
- 数据库迁移:使用 Flyway,脚本位于 `rds/flyway-migration-数据库类型/src/main/resources/db/migration/`,命名规则 `V版本号__描述.sql`
79+
80+
## 集成与最佳实践
81+
82+
1. **依赖引入**
83+
在业务项目的 `build.gradle.kts` 中按需添加依赖,例如:
84+
```kotlin
85+
implementation("io.github.truenine:composeserver-shared:latest")
86+
implementation("io.github.truenine:composeserver-rds-shared:latest")
87+
implementation("io.github.truenine:composeserver-security-spring:latest")
88+
```
89+
2. **自动配置**
90+
启用自动配置注解(如有):
91+
```kotlin
92+
@SpringBootApplication
93+
@EnableComposeServer
94+
class YourApplication
95+
```
96+
3. **统一响应、异常、分页等**
97+
推荐使用框架内置的统一响应、异常处理、分页等能力,详见 `shared` 模块。
98+
99+
4. **测试与发布**
100+
- 修改代码后先格式化,再运行测试,最后构建或发布到本地 Maven 仓库
101+
- 推荐使用 `./gradlew test``./gradlew build``./gradlew publishToMavenLocal`
102+
103+
## 其他说明
104+
105+
- 本项目为**框架库**,不包含脚手架或项目初始化功能
106+
- 所有模块均已发布至 Maven Central,详见 [README.md][Maven Central](https://central.sonatype.com/search?q=g:io.github.truenine)
107+
- 详细 API、集成示例、变更日志等请参考 [README.md] 和官方文档
108+
109+
---
110+
111+
如需为本项目贡献代码或扩展模块,请遵循上述规范和最佳实践。

0 commit comments

Comments
 (0)