update claude md with init
This commit is contained in:
parent
e593beacfc
commit
f28ee5624d
33
CLAUDE.md
33
CLAUDE.md
|
|
@ -31,6 +31,12 @@ npm run build
|
||||||
|
|
||||||
# Format PHP code
|
# Format PHP code
|
||||||
vendor/bin/pint --dirty
|
vendor/bin/pint --dirty
|
||||||
|
|
||||||
|
# Create new Volt component with test
|
||||||
|
php artisan make:volt pages/component-name --pest
|
||||||
|
|
||||||
|
# Create model with migration and factory
|
||||||
|
php artisan make:model ModelName -mf
|
||||||
```
|
```
|
||||||
|
|
||||||
## Architecture
|
## Architecture
|
||||||
|
|
@ -51,6 +57,10 @@ vendor/bin/pint --dirty
|
||||||
- `docs/architecture.md` - Complete architecture document
|
- `docs/architecture.md` - Complete architecture document
|
||||||
- `docs/stories/` - User story specifications
|
- `docs/stories/` - User story specifications
|
||||||
|
|
||||||
|
### Services
|
||||||
|
- `app/Services/AvailabilityService.php` - Calculates available time slots for bookings
|
||||||
|
- `app/Services/CalendarService.php` - Generates iCalendar files for consultations
|
||||||
|
|
||||||
### Domain Model
|
### Domain Model
|
||||||
Core models in `app/Models/`:
|
Core models in `app/Models/`:
|
||||||
- **User** - Three types: `admin`, `individual` (client), `company` (client)
|
- **User** - Three types: `admin`, `individual` (client), `company` (client)
|
||||||
|
|
@ -134,6 +144,29 @@ test('profile can be updated', function () {
|
||||||
});
|
});
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### User Factory States
|
||||||
|
When testing, use these factory states:
|
||||||
|
- `->admin()` - Creates admin user
|
||||||
|
- `->individual()` - Creates individual client
|
||||||
|
- `->company()` - Creates company client
|
||||||
|
- `->client()` - Randomly creates individual or company
|
||||||
|
- `->deactivated()` - Creates deactivated user
|
||||||
|
- `->unverified()` - Creates user without email verification
|
||||||
|
- `->withTwoFactor()` / `->withoutTwoFactor()` - 2FA states
|
||||||
|
|
||||||
|
### Notifications
|
||||||
|
Located in `app/Notifications/`:
|
||||||
|
- **Booking:** `BookingApproved`, `BookingRejected`
|
||||||
|
- **Consultation:** `ConsultationCancelled`, `ConsultationRescheduled`, `ConsultationReminder24h`, `ConsultationReminder2h`
|
||||||
|
- **Account:** `WelcomeAccountNotification`, `PasswordResetByAdminNotification`, `AccountReactivatedNotification`, `AccountTypeChangedNotification`
|
||||||
|
|
||||||
|
### Business Rules
|
||||||
|
- **No self-registration:** Admin creates all client accounts
|
||||||
|
- **Single admin:** One lawyer manages the platform
|
||||||
|
- **No online payments:** All payments handled offline
|
||||||
|
- **Cascade deletes:** User deletion cascades to consultations, timelines, notifications
|
||||||
|
- **Bilingual required:** All user-facing text needs Arabic and English
|
||||||
|
|
||||||
## Design Requirements (from PRD)
|
## Design Requirements (from PRD)
|
||||||
- **Color scheme:** Dark Navy Blue (#0A1F44) + Gold (#D4AF37)
|
- **Color scheme:** Dark Navy Blue (#0A1F44) + Gold (#D4AF37)
|
||||||
- **Bilingual:** Arabic (primary, RTL) / English (LTR)
|
- **Bilingual:** Arabic (primary, RTL) / English (LTR)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue