Skip to main content

๐Ÿ“ฅ Installation

PulseHub installs through a browser-based wizard in two steps. There is nothing to compile and no command-line access is required.


Step 1 โ€” Upload the Filesโ€‹

  1. Download pulsehub-php.tar.gz and extract it on your local machine. You will get a folder called pulsehub-php/.
  2. Upload the contents of that folder (not the folder itself) to your web root. On most shared hosts this is public_html/ or www/. On a VPS it is wherever your virtual host points (e.g. /var/www/pulsehub/).

After uploading, your web root should look like this:

public_html/
โ”œโ”€โ”€ index.php
โ”œโ”€โ”€ .htaccess
โ”œโ”€โ”€ cron.php
โ”œโ”€โ”€ install/
โ”œโ”€โ”€ app/
โ”œโ”€โ”€ public/
โ”œโ”€โ”€ config/ โ† empty at this point, created during install
โ””โ”€โ”€ data/

Subdirectory installs: If you want PulseHub at https://yourdomain.com/support/ rather than the root, upload the files into public_html/support/. The .htaccess file handles the path automatically.


Step 2 โ€” Run the Database Installerโ€‹

Open your browser and navigate to:

https://yourdomain.com/install/

Installer โ€” Step 1: Database Setupโ€‹

Fill in your MySQL credentials:

FieldDescription
Database HostUsually localhost. On some hosts it's an IP address โ€” check your host's documentation.
PortDefault is 3306. Only change this if your host uses a non-standard port.
Database NameThe name of the database PulseHub should use. It will be created automatically if your MySQL user has CREATE DATABASE privilege.
Database UserThe MySQL username that has full access to the above database.
Database PasswordThe password for that user.

Click Connect & Create Tables โ†’

Installer โ€” Step 2: Admin Accountโ€‹

FieldDescription
Workspace NameThe name of your organisation, shown in the sidebar.
Your NameThe display name for the first admin user.
Email AddressUsed to log in. Must be a valid email format.
PasswordMinimum 8 characters. Stored as a bcrypt hash โ€” never in plain text.
Confirm PasswordMust match exactly.

Click Create Account & Finish โ†’


Step 3 โ€” Log Inโ€‹

Click Go to PulseHub โ†’ on the success screen, or navigate to https://yourdomain.com/. Enter the email and password you just created.


Post-Install: Lock the Installerโ€‹

The installer automatically deactivates itself once config/database.php exists. As an extra precaution, you can delete the install/ directory entirely after setup using your hosting panel's File Manager or your FTP client.


Verifying a Successful Installโ€‹

After logging in you should see:

  • The sidebar with Inbox, Contacts, Channels, Automations, Analytics, Settings
  • Your workspace name and your name in the sidebar footer
  • The inbox showing "Select a conversation" (empty โ€” no messages yet)

Nginx Installation (VPS Only โ€” Skip on Shared Hosting)โ€‹

Shared hosting users: Your host already handles web server configuration. This section is only for VPS or dedicated servers running Nginx. You can skip it entirely.

If you are running Nginx + PHP-FPM, copy the provided example config:

server {
listen 80;
server_name yourdomain.com;
root /var/www/pulsehub;
index index.php;

location ~ ^/(config|app|data)/ {
deny all;
}

location / {
try_files $uri $uri/ /index.php?$query_string;
}

location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

Then enable the site and reload Nginx (VPS terminal):

sudo ln -s /etc/nginx/sites-available/pulsehub /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx