VELLIX POINT — cPanel one-shot deploy (no shell required)
========================================================

PART A — Before uploading
-------------------------
1. In cPanel → "MySQL® Databases":
- Create the database    : leomclxr_vellix_point
- Create the user        : leomclxr_vellix_point_user
- Set the password to the one in the shipped .env
(or, if cPanel forces different credentials, edit the .env in this
zip before going live — the app reads .env at runtime).
- Add the user to the database with ALL PRIVILEGES.
2. DNS / SSL:
- Add a single DNS A record  pnt.vellixglobal.com → this server's IP
(the bare domain — tenant workspaces live under /<slug>/app paths
now, no subdomains, no wildcard certificate).
Optionally add A records for any future hosts — there is only one
app host in this topology (docs/path-based-tenancy-plan.md Phase 7).
3. In cPanel → "Domains": the pnt.vellixglobal.com document root must be
<app>/public — never the Laravel project root. No wildcard
subdomain or admin subdomain hosts are needed.

PART B — Upload & install
-------------------------
4. Upload this zip and extract it inside your app folder, e.g. ~/vellix
(NOT inside public_html — the document root must stay <app>/public).
5. Ensure storage/ , public/storage/ and bootstrap/cache/ are writable by
the PHP user. cPanel defaults are normally fine; if you see permission
errors, set them to 755/775.
This zip does NOT include vendor/. Before step 6, install PHP
dependencies on the target:
- With SSH: cd into the extracted app folder and run
`composer install --no-dev --optimize-autoloader --classmap-authoritative`.
- Without SSH: rebuild locally with `php artisan release:build --vendor`
and re-upload, or use your host's Composer/terminal tool if cPanel
provides one (Setup Node.js/PHP App, Terminal, etc).
6. Migrate the database. This release does NOT ship a SQL dump — run the
migrations (and any seeders you need) against the database you created
in Part A yourself, e.g. via SSH (`php artisan migrate --seed`) if your
host provides shell access, or via a one-off deploy script / CI job if
it doesn't. Do this before hitting the app in a browser.
7. Done. No other `php artisan` commands need to run on the server — the
.env is already filled in (APP_KEY, DB, tenancy domains) and the
front-end is pre-compiled in public/build (no Node on the server).
8. REQUIREMENTS: the server must run PHP 8.2+ (cPanel → "MultiPHP Manager",
select the PHP version for this domain/account) and the MySQL database
must use utf8mb4 (the default).

PART C — Notes
--------------
- MAIL_* still contains <FILL_IN>: email (OTP login, notifications) is
inactive until you paste real SMTP credentials into .env.
- SESSION_DOMAIN=null and SESSION_PATH=/ are pre-set: one session per
browser. Visiting a different tenant's workspace signs that session
out (by design — docs/path-based-tenancy-plan.md Phase 3).
- Queues run synchronously (QUEUE_CONNECTION=sync) — no worker needed on
shared hosting.
- Uploaded tenant files are stored under public/storage (real directory),
so /storage/... URLs work without storage:link.
- Whatever seeder/provisioning step creates your first tenant and
landlord admin accounts is now on you to run and record — this build
no longer generates or prints any credentials.