> ## Documentation Index
> Fetch the complete documentation index at: https://docs.azvian.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation

> Get Azvian CRM running on your own server with the built-in installer wizard

## What you need

* PHP 8.3 or newer
* MySQL 5.7+ (or MariaDB equivalent)
* A web server (Apache or Nginx) with the domain's document root pointed at the `public/` folder

You do **not** need Composer or Node.js on your server — the release zip ships with `vendor/` and the built frontend (`public/build/`) already in place.

## Steps

<Steps>
  <Step title="Upload and extract">
    Upload and extract the release zip to your server, with your domain's document root pointing at the `public/` folder inside it.
  </Step>

  <Step title="Create a database">
    Create a MySQL database and a user with full privileges on it. You'll enter these details in the installer — nothing to configure by hand beforehand.
  </Step>

  <Step title="Visit your domain">
    Since nothing is installed yet, you're redirected straight to the installer. It's four steps:

    <Steps>
      <Step title="Requirements check">
        Confirms your PHP version and that the required extensions and writable folders (`storage/`, `bootstrap/cache/`) are in place. Fix anything flagged in red and refresh.
      </Step>

      <Step title="Environment & database">
        Enter your database credentials and your site's URL. The installer writes your `.env` file and runs the database migrations for you.
      </Step>

      <Step title="License activation">
        Enter the license key from your purchase confirmation. This calls home once, to azvian's licensing server, to activate your copy for this domain.
      </Step>

      <Step title="Admin account">
        Create your own login. This is the only account that exists after install — every other user (staff, clients) is created by you afterward from the Admin area.
      </Step>
    </Steps>
  </Step>

  <Step title="You're in">
    You'll land on the Staff dashboard, logged in as the admin account you just created.
  </Step>
</Steps>

## After installing

<Warning>
  Mail and payments are **not** configured yet. This CRM never ships with anyone else's credentials baked in, by design — every installation, including any demo you tried before buying, needs its own SMTP and Stripe credentials. See [Admin Guide → Integrations](/crm/admin-guide#integrations).
</Warning>

* **reCAPTCHA is optional but recommended** — also configured from Admin → Integrations, to protect your login page and public lead-capture form from bots.
* **Set up a cron job** so scheduled features actually run (recurring invoices, overdue reminders, backups, license checks):
  ```bash theme={null}
  * * * * * cd /path/to/your/install && php artisan schedule:run >> /dev/null 2>&1
  ```
* **Extending the app?** See [Customizing with hooks](/crm/customizing) — add your own logic without touching a single core file, so future updates never conflict with your changes.
* **Want staff chat?** It's an optional add-on with its own hosting requirements — see [Add-ons](/crm/addons) before setting it up.
