Documentation

Getting started

Requirements, installation, first login and the demo data.

Requirements

  • A web server with URL rewriting (Apache mod_rewrite or the nginx equivalent), HTTPS recommended.
  • PHP 8.1 or newer with the usual extensions (pdo_mysql, mbstring, intl, gd, curl, zip).
  • MySQL 8 or MariaDB 10.6+.
  • Composer, and cron access for the job queue (Google, QuickBooks, reminders).

Install

  1. Clone or download the repository and copy the files to your server.
  2. From .admin/, install the PHP dependencies:
    cd .admin
    composer install --no-dev
  3. Copy .env.example to .env and fill in the database credentials, project paths and the root user.
  4. Run the installer from the browser: https://your-domain/.admin/public/install.php. It creates the tables and the root account.
  5. Add the cron entry so queued jobs run every minute:
    * * * * * php /path/to/.admin/config/cron.php >/dev/null 2>&1
  6. Open /.admin and log in with the root user you configured.
Optional pieces — Google Workspace, QuickBooks Online, the MCP server, realtime — each have their own page in this documentation and are switched on independently.

First steps

  • Settings → Config: company name, default language, currency, taxes.
  • Settings → Users / Groups: create your team and assign rights (see Users, groups & security).
  • CRM Settings → Products, Taxes, Sources, Email templates: the reference data quotes and emails are built from.
  • Settings → Template: upload your logo and set the PDF header/footer.

Demo data

The repository ships config/custom_testdata.sql with three demo users and a set of example companies, contacts, quotes and invoices. Load it into a fresh database to explore — never into production.

Upgrading

Pull the new version, run composer install again in .admin/, then open install.php once more: it applies pending schema migrations without touching your data. Back up the database first.