diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..c6dc66d --- /dev/null +++ b/.env.example @@ -0,0 +1,12 @@ +APP_NAME=MandantCRM +APP_ENV=local +APP_KEY=base64:PLACEHOLDER_KEY +APP_URL=http://localhost +DB_HOST=mysql +DB_PORT=3306 +DB_DATABASE=mandantcrm +DB_USERNAME=placeholder_user +DB_PASSWORD=placeholder_pass +SANCTUM_STATEFUL_DOMAINS=localhost,localhost:3000 +SESSION_DOMAIN=localhost +FRONTEND_URL=http://localhost:3000 \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3fe3f82 --- /dev/null +++ b/.gitignore @@ -0,0 +1,14 @@ +.env +*.log +.DS_Store +.idea/ +node_modules/ +vendor/ +backend/storage/logs/ +backend/storage/framework/cache/ +backend/storage/framework/sessions/ +backend/storage/framework/views/ +backend/bootstrap/cache/ +frontend/.nuxt/ +frontend/.output/ +frontend/dist/ \ No newline at end of file diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..ea00d7f --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,29 @@ +# Mandant CRM — Monorepo + +## Layout +- `backend/` — Laravel 10 API + Filament admin +- `frontend/` — Nuxt 3 CSR SPA +- `docker/` — Docker Compose, nginx, PHP Dockerfile + +## Dev commands (run from repo root) +``` +make dev # docker compose up -d +make stop # docker compose down +make test # composer test inside backend container +make lint # composer static-analysis inside backend container +make migrate # php artisan migrate +make fresh # migrate:fresh --seed +make shell-php # bash into backend container +make shell-node # sh into frontend container +``` + +## Agent scope rules +- Backend feature → edit only `backend/` +- Frontend feature → edit only `frontend/` +- Auth / Docker / infra → root + both apps +- New module → follow scaffold in `.claude/skills/new-module.md` +- New history type → follow `.claude/skills/new-history-type.md` + +## Commit style +feat/fix/chore/refactor/test/docs — conventional commits +Examples: `feat(client): add search endpoint`, `fix(history): soft delete cascade`