System Requirements
Check these before you buy hosting or spin up a server — they're the same whether you run in shared-hosting or VPS mode.
Server
| Requirement | Minimum |
|---|---|
| PHP | 8.3 or newer |
| Database | MySQL 5.7+ or MariaDB 10.3+ |
| Disk space | 500MB free, plus room for your uploaded documents |
| Cron | Ability to add one cron job that runs every minute (see Cron Setup) |
Required PHP extensions
These are Laravel 13's own baseline plus a few Threadline uses directly. Most mainstream hosts (cPanel, Plesk, or a standard Ubuntu/Debian PHP install) already have all of these enabled.
-
curl— outbound calls to your AI provider and to WhatsApp/Telegram mbstring-
fileinfo— verifies uploaded document types by their real content, not just the filename -
zip— backups and the built-in updater -
gdorimagick— validates uploaded branding images (logo, favicon, login background) -
openssl,pdo_mysql,tokenizer,xml,ctype,json,bcmath
Your host's control panel usually has a "PHP Extensions" or "Select PHP Version" screen where you can confirm or enable these — on cPanel, look under Software → Select PHP Version → Extensions.
Required PHP functions
Hosts and panels can switch PHP functions off with a
disable_functions list. These must stay available:
-
proc_open— runs every scheduled task. If it is off, the cron job appears to work while nothing runs. -
symlink(orexec) — creates the link that shows uploaded logos and images. -
pcntl_signalandpcntl_alarm— only on a VPS where a queue worker runs all the time and thepcntlextension is loaded. Without them the worker stops as soon as it starts.
The installer's first page and System → Cron & Health check for these.
PHP version note: if your host's control panel defaults to an older PHP version (7.x or 8.0–8.2), switch it to 8.3+ for this domain before running the installer — Threadline won't boot on anything older.
Extra requirements on a VPS
A VPS runs Threadline in its faster mode
(SERVER=vps) and adds three services. Docker and
Dokploy installs bring all of them with them. On a server you set
up yourself you install them:
| Requirement | Minimum |
|---|---|
| Server | 2 CPU cores and 2 GB of RAM, 4 GB recommended. With a control panel, MySQL, Redis and Qdrant running and nothing else busy, about 1 GB is in use. Ubuntu 22.04 or 24.04 is the safest choice; the guides were tried on 24.04. |
| Redis | On the same server, listening on that server only. |
| Qdrant | The vector database, on the same server, usually run with Docker for this one service. |
| Supervisor (or systemd) | Keeps the queue worker running all the time. |
| A domain with HTTPS | An A record pointing at the server, and ports 80 and 443 open. |
Step-by-step guides: aaPanel, plain Ubuntu with no panel, another control panel, Docker and Dokploy.
What you do not need
In the default (shared-hosting) mode, you do not need any of the following — Threadline is built to run without them:
- SSH or command-line access
- Composer or Node.js installed on the server (the zip ships pre-built)
- A separate vector database
- Redis
- A persistent/background worker process (a regular cron job is enough)
These become available as optional upgrades only if you choose to run Threadline in VPS mode (Docker, Dokploy or a control panel) instead.
AI provider account
You'll need an account and an API key with at least one of:
- OpenAI
- Anthropic
- Google AI Studio (Gemini)
Details in AI Provider Setup — note that if you choose Anthropic (Claude) for chat, you'll still need an OpenAI or Gemini key too, since Anthropic doesn't offer an embeddings API and Threadline needs one to search your knowledge base.