| Dimension | Shared | Only in A | Only in B | Overlap |
|---|---|---|---|---|
| Sections | 0 | 4 | 5 | 0% |
| Commands | 2 | 7 | 7 | 13% |
| Section tags | 1 | 3 | 3 | 14% |
What each file covers
Sections
0 shared · 4 only in A · 5 only in B- − Repository Guidelines
- − Modules
- − Quick Commands
- − Cross-Module Rules
- + Frontend Guidelines
- + Structure
- + Commands
- + Conventions
- + Boundaries
Commands
2 shared · 7 only in A · 7 only in B- − ./gradlew build
- − ./gradlew spotlessApply
- − ./gradlew :application:test
- − pnpm -C ui typecheck && pnpm -C ui lint
- − gradle/libs.versions.toml
- − gradle.properties
- − git add -A
- + pnpm -C ui install
- + pnpm -C ui dev
- + pnpm -C ui build
- + pnpm -C ui typecheck
- + pnpm -C ui lint
- + pnpm -C ui format
- + pnpm -C ui format:check
- pnpm -C ui test:unit
- ./gradlew generateOpenApiDocs && pnpm -C ui api-client:gen
Section tags
1 shared · 3 only in A · 3 only in B- − security
- − do-not
- − agent-behaviour
- + test
- + lint-format
- + code-style
- architecture
Line diff
halo-dev/halo · AGENTS.md
@@ −1 @@
1# Repository Guidelines
2
3Halo is a full-stack monorepo: Java 21 / Spring Boot WebFlux + R2DBC backend and a Vue 3 + TypeScript + TailwindCSS frontend. Work from the repo root and load **every relevant module guide** for the areas you touch.
4
5## Modules
6
7| Module | Path | Guide |
8|---------------------|-----------------------------------------------------------|------------------------------------------------------------------|
9| API library | `api/` (extension model, contracts, security) | [api/AGENTS.md](api/AGENTS.md) |
10| Backend application | `application/` (services, routers, migrations, packaging) | [application/AGENTS.md](application/AGENTS.md) |
11| Frontend | `ui/` (console, user center, workspace packages) | [ui/AGENTS.md](ui/AGENTS.md) |
12| Application BOM | `platform/application/` (shared dependency constraints) | [platform/application/AGENTS.md](platform/application/AGENTS.md) |
13| Plugin BOM | `platform/plugin/` (plugin-facing constraints) | [platform/plugin/AGENTS.md](platform/plugin/AGENTS.md) |
14
15## Quick Commands
16
17Run from the repo root:
18
19- `./gradlew build` — full backend build and tests.
20- `./gradlew spotlessApply` — format Java, Markdown, JSON, and properties.
21- `./gradlew :application:test` — backend tests.
22- `pnpm -C ui typecheck && pnpm -C ui lint` — frontend validation.
23- `pnpm -C ui test:unit` — frontend unit tests.
24- `./gradlew generateOpenApiDocs && pnpm -C ui api-client:gen` — regenerate the UI client after contract changes.
25
26## Cross-Module Rules
27
28- Keep API contracts, backend handlers, and UI usage in sync; never hand-edit `ui/packages/api-client/src/` — regenerate it after contract changes.
29- Versions live in `gradle/libs.versions.toml`, `gradle.properties`, or `ui/package.json`; never hard-code them.
30- Branch naming: `feat/`, `fix/`, `improvement/`, `upgrade/`; PRs target `upstream` and follow `.github/pull_request_template.md`.
31- Stage specific files only; never `git add -A` (H2 artifacts and build outputs appear under `application/`).
32- Add tests for changed behavior; keep CI green.
33- Ask before public API changes, new dependencies, database migrations, security configuration, or CI workflow changes.
34- Never commit secrets or introduce blocking I/O into reactive flows.
35
36
halo-dev/halo · ui/AGENTS.md
@@ +1 @@
1# Frontend Guidelines
2
3`ui/` is the Vue 3 + TypeScript + TailwindCSS frontend, managed with pnpm workspaces.
4
5## Structure
6
7- `ui/src/` — console application.
8- `ui/uc-src/` — user center application.
9- `ui/packages/` — shared workspace packages (`@halo-dev/api-client`, `@halo-dev/components`, `@halo-dev/console-shared`, `@halo-dev/editor`, `@halo-dev/shared`, `@halo-dev/ui-plugin-bundler-kit`).
10- Unit tests: `*.spec.ts` files, usually under `__tests__/` next to the code they cover.
11
12## Commands
13
14Run from the repo root:
15
16- `pnpm -C ui install` / `pnpm -C ui dev` — install dependencies / run the dev server.
17- `pnpm -C ui build` — production build.
18- `pnpm -C ui typecheck` — `vue-tsc` type checking.
19- `pnpm -C ui lint` — ESLint (fails on any warning).
20- `pnpm -C ui format` / `pnpm -C ui format:check` — Prettier formatting.
21- `pnpm -C ui test:unit` — Vitest unit tests.
22- `./gradlew generateOpenApiDocs && pnpm -C ui api-client:gen` — regenerate `ui/packages/api-client` after backend contract changes.
23
24## Conventions
25
26- Follow existing component and composable patterns; match surrounding code rather than introducing new stylistic islands.
27- Never hand-edit `ui/packages/api-client/src/` — it is generated; regenerate it instead.
28- Keep dependency versions in `ui/package.json`; never hard-code versions.
29- Payload or UX changes usually ship together with the backend change that defines the contract.
30
31## Boundaries
32
33- New npm dependencies require approval.
34
@@ −1 +1 @@
1−# Repository Guidelines
1+# Frontend Guidelines
22
3−Halo is a full-stack monorepo: Java 21 / Spring Boot WebFlux + R2DBC backend and a Vue 3 + TypeScript + TailwindCSS frontend. Work from the repo root and load **every relevant module guide** for the areas you touch.
3+`ui/` is the Vue 3 + TypeScript + TailwindCSS frontend, managed with pnpm workspaces.
44
5−## Modules
5+## Structure
66
7−| Module | Path | Guide |
8−|---------------------|-----------------------------------------------------------|------------------------------------------------------------------|
9−| API library | `api/` (extension model, contracts, security) | [api/AGENTS.md](api/AGENTS.md) |
10−| Backend application | `application/` (services, routers, migrations, packaging) | [application/AGENTS.md](application/AGENTS.md) |
11−| Frontend | `ui/` (console, user center, workspace packages) | [ui/AGENTS.md](ui/AGENTS.md) |
12−| Application BOM | `platform/application/` (shared dependency constraints) | [platform/application/AGENTS.md](platform/application/AGENTS.md) |
13−| Plugin BOM | `platform/plugin/` (plugin-facing constraints) | [platform/plugin/AGENTS.md](platform/plugin/AGENTS.md) |
7+- `ui/src/` — console application.
8+- `ui/uc-src/` — user center application.
9+- `ui/packages/` — shared workspace packages (`@halo-dev/api-client`, `@halo-dev/components`, `@halo-dev/console-shared`, `@halo-dev/editor`, `@halo-dev/shared`, `@halo-dev/ui-plugin-bundler-kit`).
10+- Unit tests: `*.spec.ts` files, usually under `__tests__/` next to the code they cover.
1411
15−## Quick Commands
12+## Commands
1613
1714 Run from the repo root:
1815
19−- `./gradlew build` — full backend build and tests.
20−- `./gradlew spotlessApply` — format Java, Markdown, JSON, and properties.
21−- `./gradlew :application:test` — backend tests.
22−- `pnpm -C ui typecheck && pnpm -C ui lint` — frontend validation.
23−- `pnpm -C ui test:unit` — frontend unit tests.
24−- `./gradlew generateOpenApiDocs && pnpm -C ui api-client:gen` — regenerate the UI client after contract changes.
16+- `pnpm -C ui install` / `pnpm -C ui dev` — install dependencies / run the dev server.
17+- `pnpm -C ui build` — production build.
18+- `pnpm -C ui typecheck` — `vue-tsc` type checking.
19+- `pnpm -C ui lint` — ESLint (fails on any warning).
20+- `pnpm -C ui format` / `pnpm -C ui format:check` — Prettier formatting.
21+- `pnpm -C ui test:unit` — Vitest unit tests.
22+- `./gradlew generateOpenApiDocs && pnpm -C ui api-client:gen` — regenerate `ui/packages/api-client` after backend contract changes.
2523
26−## Cross-Module Rules
24+## Conventions
2725
28−- Keep API contracts, backend handlers, and UI usage in sync; never hand-edit `ui/packages/api-client/src/` — regenerate it after contract changes.
29−- Versions live in `gradle/libs.versions.toml`, `gradle.properties`, or `ui/package.json`; never hard-code them.
30−- Branch naming: `feat/`, `fix/`, `improvement/`, `upgrade/`; PRs target `upstream` and follow `.github/pull_request_template.md`.
31−- Stage specific files only; never `git add -A` (H2 artifacts and build outputs appear under `application/`).
32−- Add tests for changed behavior; keep CI green.
33−- Ask before public API changes, new dependencies, database migrations, security configuration, or CI workflow changes.
34−- Never commit secrets or introduce blocking I/O into reactive flows.
26+- Follow existing component and composable patterns; match surrounding code rather than introducing new stylistic islands.
27+- Never hand-edit `ui/packages/api-client/src/` — it is generated; regenerate it instead.
28+- Keep dependency versions in `ui/package.json`; never hard-code versions.
29+- Payload or UX changes usually ship together with the backend change that defines the contract.
3530
31+## Boundaries
32+
33+- New npm dependencies require approval.
3634
