Files
websitedev/CLAUDE.md
T
Do SikiandClaude Sonnet 5 1600d99c5d feat(cms): Payload CMS bootstrap — config, MongoDB adapter, admin routes (MITHOME-86)
Alapinstalláció a Payload CMS-re való áttéréshez (EPIC MITHOME-85):

- payload@3.88.0, @payloadcms/next, @payloadcms/db-mongodb,
  @payloadcms/richtext-lexical, graphql, sharp telepítve
- src/payload.config.ts: mongooseAdapter a meglévő MONGODB_URI-ra
  (ugyanaz az adatbázis, mint a Mongoose/mongodb rétegnek), lexical
  editor, PAYLOAD_SECRET env-ből
- src/collections/Users.ts: minimális auth collection — Payload nem
  tud admin felületet renderelni auth collection nélkül. Ez csak a
  bootstraphez kell; a valódi access control/jelszó-politika MITHOME-90
  feladata.
- App Router route group (src/app/(payload)/): admin UI
  ([[...segments]]), REST (api/[...slug]), GraphQL + playground route-ok,
  root layout — a szokásos Payload v3 Next.js integrációs minta szerint
- next.config.ts: withPayload() wrapper a route handler bundling-hoz
- tsconfig.json: @payload-config path alias -> src/payload.config.ts
  (ez oldja fel a webpack/turbopack importot is, nem csak a type-checket)
- PAYLOAD_SECRET env var: generált dev érték a .env.local-ban
  (gitignore-olt), changeme placeholder + generálási megjegyzés a
  staging/production .env példafájlokban, dokumentálva a CLAUDE.md
  env-lista részében

Ismert, még nem javított biztonsági advisory a felvett payload@3.88.0-ban
(GHSA-jg8r-5jh2-v2xj, moderate, CWE-307: az admin account-unlock alapból
más fiókok lockoutját is felold hitelesített usernek) — nincs újabb
patch-elt verzió jelenleg, nyomon követve MITHOME-90 alatt.

Ellenőrizve ezen a commiton: npm run build, npm run lint, tsc --noEmit,
npm test (58 passed) — mind zöld. Az admin bejelentkezés/DB-kapcsolat
élő tesztje MongoDB-t igényel (jelen környezetben Docker daemon nem fut,
ez lokálisan `docker compose -f docker-compose.dev.yml up -d mongodb`
után `npm run dev` + http://localhost:3000/admin-mal ellenőrizhető).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-10 03:14:51 +02:00

104 lines
4.3 KiB
Markdown
Executable File

# CLAUDE.md
> **[AI AGENT — OLVASD EL ELŐSZÖR]**
> Ez a fájl egy gyors referencia. A teljes szabályrendszer és workflow-ok a `.agent/` mappában találhatók.
> **Kötelező elolvasni**: `.agent/AGENTS.md` → `.agent/steering/development-rules.md` → `.agent/steering/architecture.md`
---
## Projekt azonosítás
- **Projekt**: mozdIT Bt. weboldal (websitedev)
- **Plane workspace**: `developments``pm.llmdev.mozdit.hu`
- **Stack**: Next.js 15, React 19, TypeScript, Tailwind CSS 4, MongoDB, Winston
- **Fő könyvtár**: `proto/`**minden parancsot innen futtatunk**
---
## Gyors referencia — Alapszabályok
1. **Szöveg sosem kerülhet közvetlenül komponensbe**`proto/src/content/pages/*.json`
2. **Feladatok**: `TODO.md` (Plane tükörképe), szinkron: `node plane-sync.js`
3. **Tesztek**: minden feature-höz kötelező; commit előtt `npm test` zöld
4. **Commit**: Conventional Commits (`feat:`, `fix:`, `docs:`, `chore:`)
5. **Fájlméret**: soft limit 300 sor, hard limit 400 sor
6. **Language**: kód+commit = English, kommunikáció+docs = Magyar
---
## Kötelező parancsok (`proto/` mappából)
```bash
npm run dev # fejlesztői szerver (Turbopack)
npm run build # produkciós build
npm run lint # ESLint ellenőrzés
npm test # unit tesztek
npm run test:coverage # lefedettség riport
npm run test:all # teljes test suite
node plane-sync.js --list # Plane projektek listázása
node plane-sync.js # Plane szinkronizáció
```
---
## Projekt struktúra
```
websitedev/
├── proto/ # Fő Next.js alkalmazás
│ └── src/
│ ├── app/ # App Router: oldalak és API route-ok
│ ├── components/ # React komponensek (PascalCase.tsx)
│ ├── content/ # JSON tartalom-kezelő rendszer
│ │ ├── common.json # Közös szövegek
│ │ └── pages/ # Oldal-specifikus JSONok
│ ├── lib/ # MongoDB, Logger, Site Config
│ ├── config/ # Statikus site konfiguráció
│ └── types/ # TypeScript típusok
├── docs/ # Projekt dokumentáció (Magyar)
├── .agent/ # AI szabályrendszer ← OLVASD EL
│ ├── AGENTS.md # Elsődleges szabályok
│ ├── steering/ # Auto-betöltődő irányelvek
│ ├── workflows/ # /new-feature, /fix-bug, /cms-feature, /review, /deploy
│ └── references/ # Accessibility checklist
├── TODO.md # Feladatlista (Plane szinkron)
└── plane-sync.js # Plane szinkronizáló script
```
---
## Környezeti változók
Szükséges változók (`.env` és `proto/.env.local`):
- `MONGODB_URI` — MongoDB connection string
- `MONGODB_DB` — Adatbázis neve (default: `mozdit`)
- `NEXT_PUBLIC_SITE_URL` — Publikus site URL
- `NEXT_PUBLIC_WEBMAIL_URL` — Webmail service URL
- `NEXT_PUBLIC_CONTACT_EMAIL` — Kapcsolati email cím
- `PLANE_API_KEY` — Plane szinkronizációhoz (a `.mcp.json`-ban is lehet)
- `PAYLOAD_SECRET` — Payload CMS JWT/session aláíráshoz (MITHOME-86); környezetenként egyedi, erős érték
---
## API struktúra
- `GET /api/health` — Rendszer állapot + MongoDB kapcsolat ellenőrzés
- Minden endpoint egységes válasz formátumban: `{ success, data, error }`
- Rate limiting érzékeny endpoint-okon (pl. `/api/contact`)
---
## Teljes szabályrendszer
| Dokumentum | Tartalom |
| --- | --- |
| `.agent/AGENTS.md` | Összes alapelv, Git konvenciók, mikor kérdezz |
| `.agent/steering/development-rules.md` | Kódolási szabályok, bugfix módszertan, intent capture |
| `.agent/steering/architecture.md` | Rétegek, adatfolyam, design system szabályok |
| `.agent/steering/testing.md` | Tesztelési stratégia, coverage elvárások |
| `.agent/workflows/new-feature.md` | Új funkció fejlesztési lépései |
| `.agent/workflows/fix-bug.md` | Hibajavítás lépései (TDD) |
| `.agent/workflows/cms-feature.md` | CMS fejlesztés + útmutató karbantartás |
| `.agent/workflows/review.md` | Code review checklist |
| `.agent/workflows/deploy.md` | Deployment folyamat |
| `.agent/references/accessibility-checklist.md` | WCAG 2.1 AA ellenőrzőlista |