README.md

Directory Lister

Join our Community Become a Sponsor One-time Donation
Packagist PHP Version Support License


Directory Lister is the easiest way to expose the contents of any web-accessible folder for browsing and sharing. With a zero configuration, drag-and-drop installation you'll be up and running in less than a minute.

Screenshot

Directory Lister is created and maintained by Chris Kankiewicz (@PHLAK.dev) with help through community contributions.

WCP360 – Web Control Panel 360

The Control Panel for Fast & Modern Web Hosting

License: Apache 2.0 PHP Caddy Status

WCP360 is an open-source, self-hosted web hosting panel built on Caddy and FrankenPHP. It delivers full HestiaCP feature parity — with significantly higher PHP throughput via worker mode, native HTTP/3, auto-HTTPS, and built-in staging environments.


Why WCP360?

WCP360 is the only hosting panel that pre-configures FrankenPHP worker mode per domain automatically. No other panel does this. Worker mode delivers 3–10× throughput for PHP framework apps (WordPress, Laravel, Symfony) compared to standard PHP-FPM.

Feature WCP360 v1.0 (Free) HestiaCP cPanel
FrankenPHP worker mode (auto) ✅ Unique
HTTP/3 + QUIC ✅ Native
Auto-HTTPS (no certbot) ✅ Caddy
Brotli/Zstd compression ✅ Default Optional Optional
Staging environments ✅ 1/domain free
Prometheus metrics ✅ Built-in
Cost (per server/year) €0 €0 $216–$588

Quick Install

bash <(curl -s https://get.wcp360.com/install.sh)

Installs in under 10 minutes on a clean server. No manual post-installation steps required.

Requirements: Debian 12 (primary), Ubuntu 22.04, or Ubuntu 24.04 — 64-bit, root access.

Optional flags:

--nginx          # Add Nginx alongside Caddy
--apache         # Add Apache alongside Caddy
--phpfpm         # Add PHP-FPM alongside FrankenPHP
--postgresql     # Add PostgreSQL
--no-mail        # Skip mail stack (Exim + Dovecot)
--no-dns         # Skip DNS stack (BIND9)

Tech Stack

Web server:  Caddy (HTTP/3 + QUIC + auto-HTTPS)
PHP runtime: FrankenPHP (worker mode, Prometheus metrics)
Database:    MariaDB
Mail:        Exim4 + Dovecot + SpamAssassin + Sieve
Webmail:     Roundcube
DNS:         BIND9
SSL:         Let's Encrypt via Caddy ACME (no certbot)
Security:    Fail2Ban + iptables
OS targets:  Debian 12, Ubuntu 22.04/24.04

Features (v1.0 — Full HestiaCP Parity)

Web Management

  • Domains, subdomains, and aliases (301 redirect) via Caddy vhosts
  • Automatic SSL for all domains (Caddy ACME — no certbot needed)
  • Multi-PHP support: PHP 8.1 / 8.2 / 8.3 / 8.4 — selectable per domain
  • FrankenPHP worker mode profiles: minimal / standard / performance / custom
  • HTTP/3 + QUIC, Brotli/Zstd compression, security headers — all default

User Management

  • Three-tier roles: Admin → Reseller → Client
  • Hosting plans with configurable quotas (disk, bandwidth, domains, mailboxes, FTP, cron)
  • User suspension, password management, system user isolation

Databases

  • MariaDB database and user creation (scoped access per database)
  • Adminer at randomized URL (https://<server>:8083/db/<token>)
  • SQL import up to 256 MB, export/dump from panel
  • PostgreSQL optional (--postgresql)

Email

  • IMAP/SMTP accounts, forwarders, catch-all — Exim4 + Dovecot
  • DKIM / SPF / DMARC auto-injected on domain creation
  • SpamAssassin per domain
  • Roundcube webmail at https://<server>/webmail/

DNS

  • BIND9 zone management (A, AAAA, CNAME, MX, TXT, NS, SRV, CAA, PTR)
  • Zone auto-created on domain creation with A, MX, SPF, DMARC, DKIM records
  • External DNS mode (skip BIND if using Cloudflare)

Other Services

  • FTP accounts (vsftpd, chrooted per domain) with quota
  • Cron job management per user (preset intervals + custom expression)
  • SSH key management (upload, toggle shell access)
  • Local backups (rsync + mysqldump), 7-day retention, restore from panel
  • Staging environments — 1 per domain, free (WCP360 exclusive)
  • Basic monitoring: CPU, RAM, disk, network, FrankenPHP worker metrics

One-click Apps

WordPress, Joomla, Nextcloud, Dolibarr

API & CLI

  • Full REST API v1 — Bearer auth, 60 req/min, all operations
  • Complete wcp-* CLI suite for all server-side operations

Interfaces

  • Admin panel (root) — server, users, plans, all services
  • Client panel — domains, databases, mail, FTP, cron, SSH, backups, file manager
  • Dark mode on both interfaces, mobile-responsive (Twig templates)

Pricing

Tier Price Domains Resellers Notable extras
Free €0 forever 100 0 Full core features, Apache 2.0 open source
Pro €49–99/server/yr 250 30 Git deploy, WAF, Restic backups, advanced monitoring
Enterprise €159/server/yr Unlimited Unlimited White-label, priority support, SLA

License is per-server, annual subscription. No per-domain or per-user charges.


Development Status

Current: Phase 0 (Documentation) complete — all docs audited and in English (v0.1.3-doc). Next: Phase 1 coding begins — install/includes/os-detect.sh (Step 1.1).

Version Phase Status
0.1.3-doc Phase 0 ✅ Complete — documentation foundation
0.2.0-alpha Phase 1 🔜 Foundation (FrankenPHP + installer)
0.3.0-alpha Phase 2 Planned — web server (vhosts, SSL, multi-PHP)
0.5.0-beta Phase 3 Planned — core features (HestiaCP parity)
0.9.0-rc Phase 5b Planned — dashboards (admin + client UI)
1.0.0 Phase 8 Planned — public release

Repository Structure

install/       # Installer, update, uninstall scripts + service includes
src/           # PHP business logic (PSR-12, namespaced WCP360\)
modules/       # Core (free) and Pro modules with module.json manifest
web/           # Twig templates, PHP controllers, CSS/JS assets
bin/           # wcp-* CLI tools
lang/          # i18n translation files (en, fr)
docs/          # Technical documentation (mirrored to docs.wcp360.com)
tests/         # ShellCheck bash tests + PHPUnit

website.wcp360.com/ is a separate sibling project in the workspace root and is not part of this repository (wcp360-main/).


Code Standards

  • PHP: PSR-12, PHPDoc, try/catch, explicit validation, PHPStan level 5+
  • Bash: ShellCheck compliant, set -euo pipefail, bashdoc headers
  • Commits: conventional commits (feat:, fix:, docs:, security:, etc.)
  • Branches: main (releases) → dev (integration) → feature/*, bugfix/*

Contributing

See CONTRIBUTING.md and DEVELOPMENT_GUIDE.MD.

WCP360 core is Apache 2.0. Contributions to the core are welcome (CLA required). Pro and Enterprise module source is proprietary and not in this repository.


License

WCP360 core is licensed under the Apache License 2.0 — see LICENSE.

Pro and Enterprise modules are proprietary, closed-source, and available through client.wcp360.com.


Links