Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
bcd6194
First implement standalone CLI prototype
iMattPro Jun 29, 2026
69c9493
Ignore agent skills
iMattPro Jun 29, 2026
924783c
Add board seeding / populating
iMattPro Jun 29, 2026
11e387f
Improve seeding and fix bugs
iMattPro Jun 29, 2026
c689267
Expand source/version selection around supported phpBB branches only
iMattPro Jun 29, 2026
0c6f2f7
Implemented board:seed --reset and --replace
iMattPro Jun 29, 2026
a4b18ce
Fix user post counts
iMattPro Jun 29, 2026
d1453f8
Get phpBB4 working
iMattPro Jun 30, 2026
ee21da1
Add extension support by binding to docker container
iMattPro Jun 30, 2026
3ab5400
Fixes for older phpBB 3.2 boards
iMattPro Jun 30, 2026
db3c4a3
Add styles support by binding to docker container
iMattPro Jun 30, 2026
225a39e
Harden CLI and add better CLI output errors
iMattPro Jun 30, 2026
7341b09
Update docs
iMattPro Jun 30, 2026
17ce172
render board:list as a fixed-width table and other cli output updates
iMattPro Jun 30, 2026
81c6866
Fix seeding issues
iMattPro Jun 30, 2026
540cbc2
Remove docker image of board on destroy
iMattPro Jun 30, 2026
a4bfa6a
Docs cleanup
iMattPro Jul 1, 2026
2284e77
Security hardening
iMattPro Jul 1, 2026
273ddb3
Implemented source maintenance
iMattPro Jul 1, 2026
cb543ba
Rename from modern to sandbox
iMattPro Jul 1, 2026
9be0e75
Use bundled composer.phar if composer not found in PATH
iMattPro Jul 1, 2026
03a961d
Update composer.phar
iMattPro Jul 1, 2026
4a84170
Remove unused cache folder
iMattPro Jul 1, 2026
7baf36d
Add some seeded users to NRU and Mod groups
iMattPro Jul 1, 2026
dac3fe4
Update docs
iMattPro Jul 1, 2026
537508c
Update docs a bit
iMattPro Jul 2, 2026
41c11b8
recursive mounting of styles and extensions folder contents
iMattPro Jul 2, 2026
3717c52
Clean up docs and vastly improve help command
iMattPro Jul 2, 2026
1bad68b
Add header blocks and use statements
iMattPro Jul 2, 2026
111f897
Reduce code duplication
iMattPro Jul 2, 2026
fa2bfb5
Remove dead code
iMattPro Jul 2, 2026
dc2796c
Additional code improvements
iMattPro Jul 2, 2026
57b95fd
Enforce PHP 8 minimum for the CLI
iMattPro Jul 2, 2026
8e3511d
Add some additional CLI messages during processes
iMattPro Jul 2, 2026
5996293
Fix Copilot Code Review findings
iMattPro Jul 3, 2026
de468cf
Merge branch 'master' into modernize
iMattPro Jul 3, 2026
1466c98
Add notice to legacy web UI about new CLI
iMattPro Jul 3, 2026
ad17082
Normalize naming of the new CLI
iMattPro Jul 3, 2026
f100324
Use tables in the cli docs where appropriate
iMattPro Jul 3, 2026
fd8c44d
Add full documentation support for CLI into QI
iMattPro Jul 3, 2026
f9bf30c
Fine tune CLI docks some more
iMattPro Jul 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,14 @@ cache/*
sources/*
vendor/*
build/*
.qi/*
extensions/*
!extensions/.gitkeep
styles/*
!styles/.gitkeep
*~
.idea
node_modules
/.agents
/agent
/skills-lock.json
34 changes: 33 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,13 @@ QuickInstall is a tool we built to support the community of phpBB extension deve
## 🛠 Upgrading
1. Get the latest version of [QuickInstall](https://www.phpbb.com/customise/db/official_tool/phpbb3_quickinstall/) and extract it.

2. Copy everything into your existing QuickInstall directory **except for the 📁`boards/`, 📁`sources/` and 📁`settings/` directories**.
2. Copy everything into your existing QuickInstall directory **except for:**
- 📁`.qi/` (may be hidden by your operating system)
- 📁`boards/`
- 📁`extensions/`
- 📁`sources/`
- 📁`settings/`
- 📁`styles/`

> If you are upgrading from QuickInstall 1.1.8 (or older) you MUST review and re-save your old Profile settings.

Expand All @@ -50,6 +56,32 @@ phpBB boards require a web server running PHP and one of the following database
| 3.1.x | 5.4.7 - 5.6.x | 3.23+ | 5.1+ | 8.3+ | SQLite 2 or 3 | Server 2000+ |
| 3.0.x | 5.4.7 - 5.6.x | 3.23+ | - | 7.x | SQLite 2 | Server 2000 |

## QuickInstall CLI

QuickInstall now includes a Docker-based CLI for creating local phpBB test boards. It writes generated state to `.qi/` and leaves the legacy web UI unchanged. The QuickInstall CLI requires PHP 8.0 or newer for the `php bin/qi` command.

```bash
php bin/qi init
php bin/qi board:create test --phpbb 3.3 --db mariadb --port 8081 --populate extension-dev
php bin/qi board:start test
```

The QuickInstall CLI targets phpBB 3.2+ installer-based boards. phpBB 3.0/3.1 remain legacy-web-app territory and are not planned for the QuickInstall CLI.

Downloaded extensions can be unzipped into `extensions/` and mounted into boards:

```bash
php bin/qi ext:mount test extensions/vendor/extname
```

Downloaded styles can be unzipped into `styles/` and mounted into boards:

```bash
php bin/qi style:mount test styles/stylename
```

See the complete [QuickInstall CLI docs](index.php?page=cli).

## 🐞 Support
You can receive support at the [phpBB3 QuickInstall Discussion/Support](https://www.phpbb.com/customise/db/official_tool/phpbb3_quickinstall/support) forum.

Expand Down
26 changes: 26 additions & 0 deletions bin/qi
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#!/usr/bin/env php
<?php

if (PHP_VERSION_ID < 80000)
{
fwrite(STDERR, "QuickInstall CLI requires PHP 8.0 or newer. You are running PHP " . PHP_VERSION . ".\n");
fwrite(STDERR, "Run bin/qi with a PHP 8+ CLI binary, or use the legacy web UI with your older PHP runtime.\n");
exit(1);
}

require __DIR__ . '/../src/QuickInstall/Sandbox/Application.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/CommandLine.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/Project.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/VersionMatrix.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/SourceProvider.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/SourceService.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/BoardService.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/DockerComposeWriter.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/BoardRunner.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/SeederWriter.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/ExtensionManager.php';
require __DIR__ . '/../src/QuickInstall/Sandbox/StyleManager.php';

use QuickInstall\Sandbox\Application;

exit((new Application(dirname(__DIR__)))->run($argv));
Binary file modified composer.phar
Binary file not shown.
Loading