Install guide
Requirements Shared hosting (no SSH) VPS / Composer After installing Updating Extensions & themes Troubleshooting

# Installing Convoro

Convoro installs entirely in your browser. The release archive ships with everything bundled — no Composer step, no Node, no command line required. If you can upload a file and create a database, you can run Convoro.

⬇ Download Convoro (.zip) .tar.gz

Self-contained — `vendor/` and compiled assets are already inside.

## Requirements

- PHP 8.3+ with extensions: `pdo`, `mbstring`, `openssl`, `tokenizer`, `gd`, `fileinfo`, `ctype`, `json`, `zip`
- A database: MySQL 8+, MariaDB 10.4+, or PostgreSQL 13+
- Writable `storage/`, `bootstrap/cache/`, and project root (for `.env`)

The installer checks all of this for you on the first screen and tells you exactly what (if anything) needs fixing.

## Shared hosting (no SSH)

1
Create a database. In your hosting panel (cPanel, Plesk, etc.) create an empty database and a user with full access to it. Note the name, user, and password.
2
Download & upload. Download the latest Convoro release (.tar.gz), upload it to your web root, and extract it there.
3
Point your domain at the `public/` folder. Most panels let you set the document root. (If you can’t, move the contents of `public/` up — see Troubleshooting.)
4
Open your site. Visit your domain — Convoro sends you straight to the `/install` wizard. Confirm requirements, enter your database details, name your community, and create your admin account.
5
Done. The installer writes your config, runs migrations, and locks itself. You’re live. 🎉

## VPS / Composer install

On a server with shell access you can also install from source:

    git clone https://github.com/ernestdefoe/convoro.git
    cd convoro
    composer install --no-dev --optimize-autoloader
    npm ci && npm run build      # only if building assets yourself
    cp .env.example .env

Then open `/install` in the browser to finish, or configure `.env` and run `php artisan migrate --force` manually. For production traffic, add Redis (cache/queue/sessions), Laravel Reverb (live threads over websockets), and a queue worker.

## After installing

- Sign in and open Admin → Settings to set your logo, theme, and SEO.
- Set up outgoing mail in Admin → Email (server mail or SMTP) so notifications and digests send.
- Open Admin → Theme to recolor your community live.
- For background jobs (digests, updates), run a queue worker: `php artisan queue:work`.

## Updating

When a new version is available you’ll see a banner in Admin → Marketplace. Click to update — Convoro downloads the release, applies it (preserving your config and uploads), and runs any new migrations. On shared hosting you can also just upload the new archive over the old files; your `.env` and `storage/` are never overwritten.

## Extensions & themes

Open Admin → Marketplace and install from the catalog — extensions are published from GitHub, so a one-click install pulls the latest release straight from the repo (no zip uploads, no Packagist). Premium add-ons unlock with a license key, and Composer-capable hosts can also pull packages directly. Click any installed card to configure its settings. To publish your own, see Building extensions.

## Troubleshooting

### I can’t set the document root to `public/`

Move everything inside `public/` into your web root, then edit `index.php` so the two `require` paths point up one level (`../` → your install folder).

### “No application encryption key”

Convoro generates this automatically on first load. If it persists, make sure the project root is writable so it can save `.env`.

### A requirement shows ✕

Enable the missing PHP extension in your hosting panel (or ask your host), then reload `/install`.

Need a hand? Try the live demo community to see everything in action.