# CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. ## Project Overview Laravel package providing the authenticated SaaS customer dashboard (`Core\Front\Client`). Extracted from the `core/php` monorepo. Part of a frontend tier hierarchy: - `Core\Front\Web` — public/anonymous - **`Core\Front\Client` — authenticated customer (this package)** - `Core\Front\Admin` — privileged admin - `Core\Hub` — SaaS operator control plane **Domain concepts:** A **Namespace** is a user identity tied to a URI/handle. A **Workspace** is a management container (org/agency). A personal workspace maps 1:1 to a namespace for solo users. ## Commands ```bash composer install # Install dependencies ``` No test suite, linter, or static analysis is configured in this package. Quality tooling is inherited from the `lthn/php` dependency in the monorepo context. ## Architecture **Namespace:** `Core\Front\Client` (PSR-4 mapped from `src/Core/Front/Client/`) **Boot.php** — Laravel ServiceProvider that: - Registers a `'client'` middleware group (session, CSRF, auth, `Core\Headers\SecurityHeaders`) - Loads Blade views under the `'client'` namespace from `Blade/` - Fires `ClientRoutesRegistering` lifecycle event so other packages can lazily register routes **Routes/client.php** — Defines `GET /dashboard` pointing to the `Dashboard` Livewire component. Additional routes are injected via `LifecycleEventProvider::fireClientRoutes()`. **View/Dashboard.php** — Livewire component rendering `client::dashboard` inside `client::layouts.app`. **Blade/layouts/app.blade.php** — Master layout using Tailwind CSS (dark theme), Flux UI components, and Font Awesome icons. ## Key Dependencies - `lthn/php` — core framework package (provides Laravel, Livewire, Flux, shared middleware) - PHP ^8.2 - EUPL-1.2 licensed