Home›Complia›Quickstart
Complia · Quickstart

Complia Quickstart, as shipped in the download

The QUICKSTART.txt in the download — the same steps your delivery email carries.

COMPLIA — QUICKSTART
====================

REQUIREMENTS
------------
  - PHP 8.0+ with extensions: pdo, pdo_sqlite (or pdo_mysql)
  - MySQL 5.7+ OR SQLite 3 (SQLite requires no extra setup)
  - A web server (Apache with mod_rewrite, or Nginx with try_files)

SHARED HOSTING / CPANEL (RECOMMENDED FOR MOST BUYERS)
------------------------------------------------------
1. Upload the contents of the `app/` folder to your web root (e.g. public_html/)
   or a subdirectory (e.g. public_html/complaints/).

2. Make sure this directory is writable by PHP:
     data/

   Via cPanel File Manager: right-click -> Permissions -> set to 755 or 775.

3. Visit https://yourdomain.com/install/ in your browser.

4. Fill in the installer:
     - Database: choose MySQL (fill in host/name/user/pass) or SQLite (no setup)
     - Organization name, complaints contact email, acknowledgment window
       (DUAA s.103 default: 30 days), and timezone
     - Admin email + password

5. The installer writes config.php and redirects you to the login page.

6. Log in. Your public complaint form is at /complain and the public status
   page is at /track — link them from your privacy notice or website footer.

VPS / SELF-HOSTED (APACHE)
--------------------------
Point a vhost at the app folder; the shipped .htaccess handles routing.
Ensure `AllowOverride All` is set for the directory and mod_rewrite is enabled.

NGINX
-----
    root /var/www/complia/app;
    index index.php;
    location ~ ^/(src|data|bin|tests|controllers|deploy|cron)/ { deny all; }
    location ~ ^/views/.+\.php$ { deny all; }
    location ~ (^|/)(config\.php|\.demo-mode)$|\.sqlite$ { deny all; }
    location = /install/ { rewrite ^ /install/index.php last; }
    location / { try_files $uri /index.php?$query_string; }
    location ~ \.php$ { try_files $uri =404; include fastcgi_params; fastcgi_pass unix:/run/php/php8.3-fpm.sock;
                        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; }

LOCAL / EVALUATION (PHP BUILT-IN SERVER)
----------------------------------------
    cd app
    php -S localhost:8080 router.php
Then open http://localhost:8080/install/ and choose SQLite.

DEMO DATA (OPTIONAL)
--------------------
After installing, you can load sample complaints to explore:
    php bin/demo.php
Demo login (only if no admin exists yet): admin@complia.app with the one-time password it prints

BACKUPS
-------
SQLite: back up data/complia.sqlite. MySQL: back up your database. Either way,
also keep a copy of config.php.

SUPPORT NOTES
-------------
- The 30-day acknowledgment timer uses the timezone set in Settings.
- The audit CSV export (Dashboard -> Audit CSV) contains the full register:
  every complaint plus its status history — suitable as ICO evidence.
- Complia is a records aid, not legal advice.

LOOKING AFTER IT (from 4.0)
---------------------------
  * Updates: open Updates in the menu, save your license key once, press Check for updates.
    Reaching 4.0 from 3.x is the last update by hand: replace the files; config.php and data/ stay.
  * Sample data: the installer offers to start with a sample; remove it later with one click.
  * Backups: "Back up once a day by itself" is on by default (/restore); add an S3-compatible bucket there for
    a copy somewhere else. The Health page (/health) says whether all of this is working.
  * On Nginx: use the NGINX lines above; they open the installer and keep data/ private.
  * One-line install for technical owners:
    curl -fsSL https://ownware.io/install.sh | sh -s -- complia <your license key>

← Back to Complia · Manual · API · Test run