RuleStack

Configs

Stacks

Compare

Diff

RuleStack

Configs

Stacks

Compare

Diff

Read API

RuleStack

Configs

Stacks

Compare

Diff

Read API

Configs/CLAUDE.md/jeecgboot/JeecgBoot

CLAUDE.md

jeecg-boot/CLAUDE.md
CLAUDE.md

Quality

89/100

Scores the file, not the repository.

Length

818 words

17 headings · 3 code blocks

Repository

47k

— · pushed 5 days ago

Last changed

3 days ago

First indexed 3 days ago.
jeecgboot/JeecgBoot/jeecg-boot/CLAUDE.mdRawGitHub
1# CLAUDE.md
2 
3> You should always answer questions in Simplified Chinese first, unless the user explicitly requests another language.
4 
5This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
6 
7## Project Overview
8 
9JeecgBoot 3.9.3 — a Java low-code development platform built on **Spring Boot 4.1.0**, **Java 17** (also supports 21, 24). It runs as a monolithic app by default, with an optional Spring Cloud microservices mode. Uses `jakarta` namespace (not `javax`) throughout.
10 
11## Build & Run Commands
12 
13```bash
14# Full build (tests are skipped by default via surefire config)
15mvn clean package
16 
17# Build with tests
18mvn clean package -DskipTests=false
19 
20# Run the standalone application (port 8080, context-path: /jeecg-boot)
21cd jeecg-module-system/jeecg-system-start
22mvn spring-boot:run
23 
24# Build a specific module (with dependencies)
25mvn clean package -pl jeecg-boot-base-core -am
26 
27# Run a single test class
28mvn test -DskipTests=false -pl <module> -Dtest=<TestClassName>
29 
30# Build with microservices modules included
31mvn clean package -P SpringCloud
32 
33# Docker startup
34./start-docker-compose.sh # or start-docker-compose.bat on Windows
35```
36 
37## Module Architecture
38 
39```
40jeecg-boot-parent (root pom)
41├── jeecg-boot-base-core # Core framework: Shiro/JWT auth, MyBatis-Plus config,
42│ # common utilities, AOP aspects, base controllers
43├── jeecg-module-system # System management (users, roles, permissions, dicts, menus)
44│ ├── jeecg-system-api # API interfaces (local-api vs cloud-api for mono/micro switch)
45│ │ ├── jeecg-system-local-api # Direct method calls (monolithic)
46│ │ └── jeecg-system-cloud-api # Feign clients (microservices)
47│ ├── jeecg-system-biz # Business logic, entities, mappers, services
48│ └── jeecg-system-start # Main entry point (JeecgSystemApplication), all configs
49├── jeecg-boot-module # Business feature modules
50│ ├── jeecg-module-demo # Demo/example code
51│ ├── jeecg-boot-module-airag # AI/RAG integration
52│ ├── jeecg-boot-module-easyoa # Simple OA module
53│ ├── jeecg-boot-module-joa-flowable # OA + Flowable workflow
54│ ├── jeecg-boot-module-pay # Payment module
55│ └── jeecg-boot-module-wps # WPS document integration
56└── jeecg-boot-platform # Low-code platform modules
57 ├── jeecg-boot-module-bpm-flowable # BPM workflow engine
58 ├── jeecg-boot-module-airag-flow # AI RAG flow
59 ├── jeecg-boot-module-bigscreen # Big screen/dashboard designer
60 ├── jeecg-boot-module-desform # Form designer
61 ├── jeecg-boot-module-drag # Drag-and-drop report designer
62 ├── jeecg-boot-module-lowapp # Low-code application engine
63 ├── jeecg-boot-module-mindesflow-flowable # Simple flow designer
64 └── jeecg-boot-module-online # Online code generator & forms
65```
66 
67Optional microservices modules (activated via `-P SpringCloud`):
68- `jeecg-server-cloud/` — Gateway (port 9999), Nacos (8848/18080), cloud service starters, monitoring (9111), XXL-Job (9080), Sentinel (9000)
69 
70## Key Technology Stack
71 
72| Layer | Technology |
73|-------|-----------|
74| ORM | MyBatis-Plus 3.5.16 (`BaseMapper<T>`, `ServiceImpl<M,T>`) |
75| Auth | Apache Shiro 3.0.0 + JWT 4.5.0, Redis-backed sessions |
76| DB Pool | Druid 1.2.28 with dynamic datasource support |
77| DB Migration | Flyway (scripts in `jeecg-system-start/src/main/resources/flyway/sql/mysql/`) |
78| JSON | FastJSON 2 |
79| Excel | AutoPoi (`autopoi-spring-boot-3-starter`) |
80| API Docs | Knife4j 4.5.0 (OpenAPI v3, `@Schema` annotations) |
81| Scheduled Jobs | Quartz (JDBC store, clustered) |
82| File Storage | MinIO / Aliyun OSS / Qiniu (controlled by `jeecg.uploadType` config) |
83| Microservices | Spring Cloud 2025.1.0.0 + Alibaba (Nacos, Gateway, Sentinel) |
84 
85## Code Conventions & Patterns
86 
87**Package structure:** `org.jeecg.modules.<module-name>.{controller,entity,mapper,mapper.xml,service,service.impl,vo}`
88 
89**Naming conventions:**
90- Entities: `Sys` prefix for system entities (e.g., `SysUser`, `SysRole`). Use `@TableName`, `@TableId(type = IdType.ASSIGN_ID)`
91- Controllers: `<Entity>Controller extends JeecgController<Entity, IService>` — base class provides standard CRUD + Excel import/export
92- Services: Interface `I<Entity>Service extends IService<Entity>`, impl `<Entity>ServiceImpl extends ServiceImpl<Mapper, Entity>`
93- Mappers: `<Entity>Mapper extends BaseMapper<Entity>`, with XML in `mapper/xml/`
94 
95**Common annotations on entities:** `@Data`, `@EqualsAndHashCode(callSuper = false)`, `@Accessors(chain = true)`, `@TableName`
96 
97**API response wrapper:** `Result<T>` (from `org.jeecg.common.api.vo.Result`) — use `Result.OK(data)`, `Result.OK(msg, data)`, `Result.error(msg)`. The `result` field holds data, `success`/`code`/`message` hold status.
98 
99**Auto query building:** `QueryGenerator.initQueryWrapper(entity, request.getParameterMap())` auto-builds `QueryWrapper` from HTTP request params, supporting fuzzy match, range queries, etc.
100 
101**Monolithic ↔ Microservices switch:** The `jeecg-system-api` module has two implementations (`local-api` for direct calls, `cloud-api` for Feign). Switching is done by changing the dependency in the startup module, not by modifying business code.
102 
103**代码修改痕迹日志:** 所有新增或修改的代码块必须用 `update-begin` / `update-end` 注释包裹,格式如下:
104 
105```java
106//update-begin---author:作者 ---date:YYYY-MM-DD for:【bug号/需求号】修改说明-----------
107// 新增或修改的代码
108//update-end---author:作者 ---date:YYYY-MM-DD for:【bug号/需求号】修改说明-----------
109```
110 
111规则:
112- `author` 填实际修改人,`date` 填修改日期(格式 `YYYY-MM-DD`),`for` 填 bug 号或需求号 + 简要说明
113- 新增方法:`update-begin` 放在方法声明前,`update-end` 放在方法结束 `}` 后
114- 修改已有方法中的代码:`update-begin` / `update-end` 只包裹被修改的代码段,不包裹整个方法
115- 用户未提供 bug 号时,需要主动询问
116 
117## Database
118 
119**Supported:** MySQL 8.0+ (default), PostgreSQL, Oracle 11g+, SQL Server 2017+, MariaDB, DM8 (达梦), KingBase ES. Database-specific configs are in `application-{dbtype}.yml` profiles.
120 
121**Initial setup:** Import `db/jeecgboot-mysql-5.7.sql` for the base schema. Flyway handles incremental migrations (scripts organized by date folders like `202512/`).
122 
123**Flyway note:** In dev mode, `spring.main.lazy-initialization=true` is enabled for startup speed, which can interfere with Flyway auto-config. Flyway auto-config is explicitly excluded and managed separately.
124 
125## Configuration
126 
127Main config files are in `jeecg-module-system/jeecg-system-start/src/main/resources/`:
128- `application.yml` — profile selector (active profile set by Maven: dev/test/prod/docker)
129- `application-dev.yml` — development config (port 8080, lazy-init enabled)
130- Dev environment requires: MySQL, Redis. Optional: MongoDB, RabbitMQ
131 
132Key config namespace: `jeecg.*` in YAML controls platform features (upload type, firewall settings, AI config, MinIO, shiro excludes, etc.).
133 
134## Docker Services (docker-compose.yml)
135 
136MySQL (port 13306), Redis, PostgreSQL+pgvector, MongoDB, and the application container (port 8080).
137 
138## Online 低代码模块 (jeecg-boot-module-online)
139 
140Online 模块采用**元数据驱动**架构,通过数据库配置表(`onl_cgform_*`)实现运行时 CRUD,无需生成代码。配置存在数据库中而非文件系统,Claude Code 无法直接读取具体表单配置,需用户提供 JSON 导出或截图。
141 
142**完整的配置 Schema、控件类型、默认值语法、增强机制等详见: [online-form-schema.md](online-form-schema.md)**
143 

Commands it names

  • mvn clean package
  • mvn clean package -DskipTests=false
  • mvn spring-boot:run
  • mvn clean package -pl jeecg-boot-base-core -am
  • mvn test -DskipTests=false -pl <module> -Dtest=<TestClassName>
  • mvn clean package -P SpringCloud

Sections

  • CLAUDE.md
  • Project Overview
  • Build & Run Commands
  • Full build (tests are skipped by default via surefire config)
  • Build with tests
  • Run the standalone application (port 8080, context-path: /jeecg-boot)
  • Build a specific module (with dependencies)
  • Run a single test class
  • Build with microservices modules included
  • Docker startup
  • Module Architecture
  • Key Technology Stack
  • Code Conventions & Patterns
  • Database
  • Configuration
  • Docker Services (docker-compose.yml)
  • Online 低代码模块 (jeecg-boot-module-online)

What it covers

buildtestcode-stylearchitecturedependenciesdatabaseagent-behaviour

Stack — with the evidence

java

(1.00)

ai-agent

(1.00)

node

(0.70)

vue

(0.70)

vite

(0.70)

jest

(0.70)

eslint

(0.70)

typescript

(0.60)

docker

(0.60)

javascript

(0.50)

Format

CLAUDE.md

Claude Code's memory file. Shaped like AGENTS.md but with two things it lacks: @path imports, so shared rules live in one place, and a user-scope layer that follows the developer across repos rather than shipping with the code.

What the corpus says about it

Repository

Owner
jeecgboot
Language
—
License
—
Archived
no

All configs in this repo

Also in jeecgboot/JeecgBoot

Diff this repo’s formats

One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?

The other instruction files in this repository
RepositoryFormatStackCoversScoreChanged
jeecgboot/JeecgBootjeecgboot-vue3/CLAUDE.md · 47kCLAUDE.mdtypescriptvite+9setupbuildtestlint-format+1097/1003 days ago
Diff against jeecgboot-vue3/CLAUDE.md

Similar configs

Same format, overlapping stack, ranked by quality.

Same format, overlapping stack, ranked by quality
RepositoryFormatStackCoversScoreChanged
nimbalyst/nimbalystpackages/android/CLAUDE.md · 1.4kCLAUDE.mdtypescriptnode+16setupbuildstylearch+2100/1003 days ago
bagisto/bagistoCLAUDE.md · 28kCLAUDE.mdphplaravel+8setupbuildteststyle+5100/1003 days ago
microsoft/playwrightCLAUDE.md · 94kCLAUDE.mdtypescriptjavascript+10buildtestlint-formatstyle+7100/1003 days ago
dotCMS/corecore-web/CLAUDE.md · 949CLAUDE.mdjavanode+13teststylearchtesting-strategy+3100/1003 days ago
filamentphp/filamentCLAUDE.md · 32kCLAUDE.mdphplaravel+5buildtestlint-formatstyle+7100/1003 days ago
Adit-Jain-srm/NightmareNetCLAUDE.md · 45CLAUDE.mdtypescriptpython+18buildtestlint-formatstyle+6100/1003 days ago
dotCMS/coreCLAUDE.md · 949CLAUDE.mdjavanode+9setupbuildteststyle+799/100today
carrot-foundation/middle-earthCLAUDE.md · 0CLAUDE.mdtypescriptnode+12setupbuildtestlint-format+697/1003 days ago
RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack