KeyHelp

KeyHelp hosting panel API client and configuration. Requires ProcessKeyHelp for the admin UI.

Install ProcessWire on KeyHelp domains directly from ProcessWire Admin.

KeyHelp connects ProcessWire Admin to KeyHelp, a German hosting control panel. It brings KeyHelp API workflows into ProcessWire: domains, clients, databases, email, FTP, SSL, PHP settings, DNS, cron jobs, server status and ProcessWire installations.

KeyHelp hosting management illustration

It is made for ProcessWire projects where hosting operations should be available inside the CMS without sending editors or site administrators into the hosting panel for every routine task.

Author: Maxim Semenov
Website: smnv.org
Email: maxim@smnv.org

German documentation: README.de.md

If this project helps your work, consider supporting future development: GitHub Sponsors or smnv.org/sponsor.

What KeyHelp Does


  • Adds a ProcessWire admin dashboard for KeyHelp hosting data.
  • Lists and manages domains, clients, databases, email accounts, FTP users, SSL certificates and cron jobs.
  • Manages per-domain SSL, Let's Encrypt, HTTPS redirect, HSTS, PHP version and DNS records.
  • Shows server status, software versions, resources, services and server reboot action for permitted users.
  • Opens KeyHelp database tools and service-management screens from ProcessWire.
  • Loads slow API-backed pages in the background so the admin shell appears immediately.
  • Caches API GET responses and provides a manual cache flush.
  • Includes debug logging for sanitized API requests, payloads, responses, cache hits and timings.
  • Supports English and German UI text.
  • Supports multi-tenant and single-tenant usage.
  • Provides granular ProcessWire permissions for view, edit, delete and server access.
  • Installs fresh ProcessWire sites on KeyHelp domains from stable or dev archives.
  • Supports local and SSH remote ProcessWire installation when KeyHelp and ProcessWire run on different hosts.
  • Stores generated ProcessWire credentials encrypted with the ProcessWire site salt.
  • Installs ProcessWire modules from GitHub repositories after validating the target installation.

Admin Area


KeyHelp adds a dedicated admin section where permitted users can:

  • review hosting status and resource counts;
  • browse domains, clients, databases, email accounts, FTP accounts, SSL certificates and cron jobs;
  • create routine hosting resources from ProcessWire;
  • update domain SSL, PHP and DNS settings;
  • install ProcessWire on a selected domain;
  • install ProcessWire modules from GitHub into /site/modules;
  • review stored ProcessWire credentials on the domain page;
  • open KeyHelp phpMyAdmin / Database Web Interface links;
  • flush cached API responses;
  • access server information when allowed.

Installer


The Installer section prepares a complete ProcessWire installation on a KeyHelp domain:

  • downloads the selected ProcessWire archive;
  • unpacks it into the domain document root;
  • creates a KeyHelp database and database user;
  • generates a random admin URL and strong credentials;
  • runs the ProcessWire CLI installer;
  • adapts Apache configuration for KeyHelp;
  • saves credentials in an encrypted ProcessWire database table.

For separate KeyHelp and ProcessWire hosts, configure SSH deployment in the module settings. The installer can then upload files and run the ProcessWire CLI installer remotely.

Requirements


  • ProcessWire 3.0.200+
  • PHP 8.0+
  • PHP curl extension
  • KeyHelp REST API access
  • A KeyHelp admin API key

The module targets KeyHelp API 2.14 and /api/v2 endpoints.

Installation


  1. Copy the KeyHelp folder into /site/modules/.
  2. In ProcessWire Admin, refresh modules.
  3. Install KeyHelp.
  4. Open the KeyHelp module settings.
  5. Enter the KeyHelp panel URL and API key.
  6. Grant the needed ProcessWire permissions to non-superuser roles.

Permissions


Superusers always have access. Other ProcessWire roles can be granted:

  • keyhelp-view - view dashboard and resource lists.
  • keyhelp-edit - create and edit resources.
  • keyhelp-delete - delete resources.
  • keyhelp-server - view server info and reboot the server in multi-tenant mode.

Documentation


See README.de.md for German documentation.

See CHANGELOG.md for the release notes.

Author


Maxim Semenov
smnv.org
maxim@smnv.org

License


MIT

More modules by Maxim Semenov

  • Context

    Export ProcessWire site context for AI development (JSON + TOON formats)
  • Ichiban (SEO control center)

    Comprehensive SEO module: meta/OG/schema, audit, redirects, revisions, email reports.
  • WireWall

    Advanced traffic firewall with VPN/Proxy/Tor detection, rate limiting, and JS challenge
  • Subscribe

    Newsletter subscription handler with lists, double opt-in, honeypot, rate limiting and unsubscribe link.
  • Dimensions

    Stores product dimensions (L×W×H) and weight with selectable units of measurement.
  • Squad

    AI integration for ProcessWire. Supports Anthropic, OpenAI, Google, xAI, and OpenRouter.
  • Plausible Analytics

    Plausible Analytics dashboard using Stats API v2 with page-edit widget, traffic trends chart, and geo/device tabs.
  • PagePDF

    Convert ProcessWire pages to PDF documents with advanced typography support
  • Verk

    Site ops layer for ProcessWire: tasks, sprints, quarter planning, editorial calendar, content audit, and knowledge base.

All modules by Maxim Semenov

Install and use modules at your own risk. Always have a site and database backup before installing new modules.