# VanLocalUK Developer Handover

## Product summary

VanLocalUK is a lead-delivery SaaS for UK removals and moving businesses. It reuses the existing provider portal, admin portal, billing, CRM, and lead pipeline architecture while adapting the domain to removals and service leads.

Current default vertical:

- `removals`

Supported vertical pattern:

- `removals`
- `property`

## Stack

- Python 3
- `http.server`
- SQLite
- Server-rendered HTML/CSS

## Shared core reused from the base platform

- Authentication and sessions
- Admin permissions
- Provider management
- Packages, subscriptions, credits
- Lead assignments and lead status history
- Invalid lead reporting
- Tickets and notifications
- CRM modules
- Landing CMS
- Media performance tracking

## VanLocalUK domain additions

- Public moving enquiry capture
- Public provider application fields
- Service category support
- Postcode coverage matching
- Move requirements storage
- Moving lead match tracking
- GBP defaults
- VanLocalUK-specific branding and environment names

## Main data model

Shared tables still used:

- `users`
- `partners`
- `subscriptions`
- `leads`
- `lead_assignments`
- `lead_status_history`
- `notifications`
- `tickets`
- `media_subscriptions`

New removals-specific tables:

- `moving_enquiries`
- `move_requirements`
- `partner_service_categories`
- `moving_lead_matches`
- `service_areas`

## Runtime defaults

- DB env: `VANLOCALUK_DB`
- Default DB file: `vanlocaluk.db`
- Private uploads env: `VANLOCALUK_PRIVATE_UPLOADS`
- Default timezone: `Europe/London`
- Default vertical: `removals`

## Seeded clean database accounts

- Admin: `admin@vanlocaluk.test` / `admin123`
- Provider: `partner@vanlocaluk.test` / `partner123`

These are inserted only when the database is empty.

## Key routes

Public:

- `/`
- `/moving`
- `/submit-moving-enquiry`
- `/apply-partner`
- `/login`
- `/1054adminstaffloginportal`

Admin:

- `/admin/dashboard`
- `/admin/partners`
- `/admin/leads`
- `/admin/subscriptions`
- `/admin/media`
- `/admin/enquiries`
- `/admin/landing-cms`

Provider:

- `/partner/dashboard`
- `/partner/leads`
- `/partner/media-leads`
- `/partner/credits`
- `/partner/profile`

## Deployment

- Passenger startup file: `passenger_wsgi.py`
- Entry point: `application`
- cPanel helper: `cpanel_install_wizard.sh`
- No-terminal helper: `cpanel_initialize.py`
- cPanel guide: `CPANEL_INSTALL_WIZARD.md`
- Universal cPanel guide: `UNIVERSAL_CPANEL_DEPLOYMENT.md`
