docs: add CLAUDE.md project instructions
Co-Authored-By: Virgil <virgil@lethean.io>
This commit is contained in:
parent
97909bec75
commit
8b09fd7fab
1 changed files with 43 additions and 0 deletions
43
CLAUDE.md
Normal file
43
CLAUDE.md
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
# 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
|
||||
Loading…
Add table
Reference in a new issue