c34cc41496
- Dockerfile multi-stage (build eclipse-temurin:25-jdk → runtime) - CI : tests via actions/setup-java puis build & push vers registry Gitea - Trigger Watchtower après push sur main - CLAUDE.md + rules projet (.claude/rules/) - Version build.gradle : 0.0.1-SNAPSHOT → 0.0.1 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
50 lines
2.5 KiB
Markdown
50 lines
2.5 KiB
Markdown
# CLAUDE.md — Olhar-API
|
|
|
|
## Contexte du projet
|
|
|
|
API REST Spring Boot 3 (Java 25) pour l'application Olhar de gestion de photos personnelles.
|
|
- **Architecture** : Clean Architecture hexagonale (Ports & Adapters)
|
|
- **Stack** : Spring Boot 3, Spring Security, JPA/PostgreSQL, Flyway, JWT, Testcontainers
|
|
- **Build** : Gradle (Groovy DSL), exécuté dans un container Podman (`eclipse-temurin:25-jdk`)
|
|
- **Git remote** : `ssh://git@git.goutailler-olivier.com:2222/Gato/Olhar-API.git`
|
|
- **Frontend consommateur** : `Olhar-PWA` — dépôt `Gato/Olhar` sur Gitea
|
|
|
|
## Commandes
|
|
|
|
```bash
|
|
# Compiler
|
|
podman run --rm -v $(pwd):/workspace:Z -w /workspace eclipse-temurin:25-jdk ./gradlew compileJava --no-daemon
|
|
|
|
# Tests
|
|
podman run --rm -v $(pwd):/workspace:Z -w /workspace eclipse-temurin:25-jdk ./gradlew test --no-daemon
|
|
|
|
# Package
|
|
podman run --rm -v $(pwd):/workspace:Z -w /workspace eclipse-temurin:25-jdk ./gradlew bootJar --no-daemon
|
|
|
|
# Démarrer en dev (BDD via docker-compose)
|
|
docker compose up
|
|
```
|
|
|
|
## Règles
|
|
|
|
Les règles spécifiques au projet sont dans `.claude/rules/` :
|
|
|
|
- **[Architecture](.claude/rules/architecture.md)** — couches hexagonales, règle de dépendance, interdictions
|
|
- **[Tests](.claude/rules/tests.md)** — JUnit 5, JaCoCo ≥ 90%, Testcontainers, Podman
|
|
- **[Commits & versions](.claude/rules/commits-versions.md)** — scopes Conventional Commits, versioning dans `build.gradle`
|
|
- **[Documentation](.claude/rules/documentation.md)** — wiki Olhar-API, specs fonctionnelle et technique
|
|
- **[Intégration webapp](.claude/rules/webapp-integration.md)** — contrat d'API, issues Olhar-PWA, feature flags
|
|
- **[Issues Gitea](.claude/rules/issues-gitea.md)** — suivi du projet, dépôts Olhar-API et Olhar
|
|
|
|
Les règles workspace partagées (build Java/Podman, commits, wiki, tests) sont dans `../.claude/rules/`.
|
|
|
|
## Skills à utiliser
|
|
|
|
| Skill | Doc | Quand l'utiliser |
|
|
|-------|-----|-----------------|
|
|
| `/gitea-issue` | [~/.claude/commands/gitea-issue.md](/home/Gato/.claude/commands/gitea-issue.md) | Lire, créer, commenter ou fermer une issue sur Olhar-API ou Olhar-PWA |
|
|
| `/create-issue` | [~/.claude/commands/create-issue.md](/home/Gato/.claude/commands/create-issue.md) | Créer rapidement une issue avec titre + description |
|
|
| `/code-review` | skill natif Claude Code | Relire un diff avant commit ou pour une PR |
|
|
| `/verify` | skill natif Claude Code | Vérifier qu'un endpoint fonctionne après implémentation |
|
|
| `/run` | skill natif Claude Code | Démarrer l'application et observer son comportement réel |
|