Tiny Projects Inspired by WordPress
WordPress development has inspired core developers to code up some interesting utilities, tools and toolchains to aid in the deployment and development processes. Like the notorious `bumpbot` (compresses scripts and styles, bumps their version numbers) and `potbot` (generates pot files), there other at least a dozen other tools that are not only useful, but open-source and available for download.
Ready to look into some of the most interesting ones?
svn co https://code.svn.wordpress.org/browsehappy/ browsehappy
https://browsehappy.com/ is a tiny WordPress one-page theme which you can clone and run yourself. The theme keeps track of popular browser version with its
fetch_version routine, that uses the Wikipedia API to get Latest stable software release version numbers. Versions cached in the database using the Transients API
Dotorg API Reference
svn co https://code.svn.wordpress.org/dotorg-api-reference/ dotorg-api-reference
The WordPress.org API Reference WordPress plugin, called WordPress Docs, that creates three custom post types – Functions, Classes and Hooks. An additional utility powered by BackPress hydrates these post types from the files in a working WordPress root.
After installing the WordPress Docs plugin, you’ll have to create a config.php file in the script directory and fill in the WordPress database credentials and root directory. Run
php wpapi.php from the command line. This will start parsing and generating post content for the chosen database.
svn co https://code.svn.wordpress.org/irc-logger/ irc-logger
A PHP-based IRC bot that logs channel activity. This is the package that powers WordPress IRC Logs, complete with the frontend and the logging bot complete with Nick and Channel service authentication etc. The bot can attend to multiple channels. The bot is under the
rez-bot nickname in WordPress IRC channels.
Logs are stored in SQLite databases. The frontend allows for searching and filtering.
svn co https://code.svn.wordpress.org/jobs/ jobs
Jobs is a full-fledged job queue and scheduling system written in PHP. The documentation is quite good at explaining things, however you need to be sure that you know what you’re doing and why you’re doing it, since not everything works out of the box.
The package includes a front-facing web interface as well.
svn co https://code.svn.wordpress.org/lockd/ lockd
svn co https://code.svn.wordpress.org/elockd/ elockd
lockd is a lock server daemon coded in PHP, while
elockd is its Erlang version.
lockd manages private and shared locks, releases and requests via remote sockets. A highly useful and lightweight library for synchronization of local and remote resources.
lockd clients are also included, with easy to use and remember
release methods. The Erlang version is said to run faster.
svn co https://code.svn.wordpress.org/netmon/ netmon
An SNMP server monitoring tool with a nice PHP and JS front-end and a Python-powered backend.
WordPress Plugin Readme Parser
svn co https://code.svn.wordpress.org/plugin-readme-parser/ plugin-readme-parser
This is a WordPress plugin that parses and validates WordPress plugin readme files. In fact the package contains two separate plugins – Markdown Extra, by Michel Fortin, and Org Readme Validator.
Once activated, the Readme Validator can be spawned by adding a
validator GET request to the URL. A live and working version of the plugin validator can be found here.
svn co https://code.svn.wordpress.org/wildcache/ wildcache
https://wildcache.wordpress.com/ says it all, but in short, WildCache is a multi-purpose, file-based caching proxy with the ability to implement additional plugins in PHP. WildCache accepts HTTP methods – GET/POST, PUT, DELETE and HEAD. It comes with 5 simple plugins to get you started, supporting logging, clustering and distribution. WildCache is very lightly documented and virtually non-maintained (several years old), but still appears to be an interesting, lightweight tool that can teach one a lot about caching and invalidation methods.
Check out other projects at Code.Wodpress Trac. Did you find anything useful or particularly interesting?