Help us shape the future of Go! Take the 2026 Go Developer Survey

phuo

command module
v0.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2026 License: MIT Imports: 9 Imported by: 0

README

phuo wordmark

phuo

phuo (φύω), a dead simple MediaWiki extension and skin manager.

A demo of phuo

Why?

No one likes to manage extensions and skins in MediaWiki. Some have Composer support, which is great for dependencies, but what about the ones that don't?

phuo will manage everything for you, the external binaries needed, the compatibility policy, and more.

Usage

phuo requires Go 1.27 or later.

go install github.com/t7ru/phuo@latest

You can also get a prebuilt binary from the releases page.

From your MediaWiki root:

phuo init

And that's it! init records the extensions and skins already installed, so you can carry over what you already have with no extra effort.

When you need to install something, do:

phuo add MobileFrontend
phuo add skin:Liberty
phuo add CodeMirror@REL1_45

This will download the package from MediaWiki's 'registry' (the Distributor to be precise), installs what it requires, and loads it in your LocalSettings.php.

When you want to update, do:

phuo outdated
phuo update

And you can check what needs to be updated... then update all of them, because of course we want them at their latest!

Don't like the changes? Use phuo revert and it rolls the last change back!

Commands

phuo --help lists everything, while phuo <command> --help lists flags. Commands that take names will open a picker if you were to you omit them.

init Create phuo.json and record what's already installed
adopt Move your wfLoad* lines into the phuo block
add (a) Add extensions or skins
remove (rm) Remove packages and unused requirements
install (i) Install from phuo.lock
enable / disable Load or stop loading packages in LocalSettings.php
outdated List packages with newer commits
update (up) Update to the latest commit of the branch
pin / unpin Pin or unpin at the current commit
revert Undo the last change
rel Show or set the release branch
diff / changelog (log) What an update would change
patch Edit a package in place, then --commit or --remove
ls (list) What's installed
info Registry and local metadata
search Search Extension and Skin pages
why Why a package is installed
licenses Group by license
doctor Health checks
prune Delete directories not in the lock
fetch Download locked archives into the cache
cache Show the cache, or cache rm to delete it
upgrade Update this phuo binary
completions bash, zsh, fish, or powershell

For a more comprehensive list, see Phuo#Commands on its MediaWiki page.

License

MIT

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
cli
mw
ui

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL