Overview
The WordPress Developer Showcase is built on modern technologies and requires specific versions of WordPress, PHP, and Node.js to function correctly. This page details all requirements for both development and production environments.Core Requirements
WordPress Version
Minimum Version
WordPress 6.9 or higher
Recommended
Latest stable release of WordPress
- Block Bindings API - Connect custom data sources to block attributes
- Theme.json v3 - Enhanced theme configuration schema
- Block Hooks API - Programmatically modify block registration
- Pattern Overrides - Enhanced pattern customization capabilities
- Interactivity API - New frontend interactivity framework
PHP Requirements
| Component | Minimum Version | Recommended Version |
|---|---|---|
| Bifrost Noise Theme | PHP 8.1 | PHP 8.3 |
| Bifrost Music Plugin | PHP 8.1 | PHP 8.3 |
Both the theme and plugin specify
"php": ">=8.1" in their composer.json files. This is enforced by WordPress when activating the theme or plugin.Required PHP Extensions
The following PHP extensions are required:- json - JSON encoding/decoding (required by WordPress core)
- mbstring - Multibyte string handling
- mysqli or pdo_mysql - Database connectivity
- curl - HTTP requests (for WordPress HTTP API)
- openssl - Secure connections
- zip - Handling zip archives (for plugin/theme installation)
Recommended PHP Extensions
- gd or imagick - Image processing
- intl - Internationalization support
- opcache - Performance optimization
- apcu - Object caching (for production)
Node.js Requirements
| Purpose | Minimum Version | Recommended Version |
|---|---|---|
| Asset Building | Node.js 18.x | Node.js 20.x (LTS) |
| Package Manager | npm 9.x | npm 10.x |
The build process uses
@wordpress/scripts which requires Node.js 18 or higher. Older versions are not supported.Composer Requirements
| Component | Minimum Version |
|---|---|
| Composer | 2.0 or higher |
Development Dependencies
Theme Development (Bifrost Noise)
PHP Dependencies (via Composer)
WPCS
WordPress Coding Standards for PHP_CodeSniffer - enforces WordPress coding style
PHPCompatibility
Checks PHP version compatibility for WordPress environments
VarDumper
Symfony’s debugging component for enhanced var_dump() functionality
CodeSniffer Installer
Automatically configures PHP_CodeSniffer with WordPress standards
Node.js Dependencies (via npm)
@wordpress/scripts
WordPress-maintained webpack configuration and build tools
@wordpress/blocks
Block Editor block registration and manipulation APIs
@wordpress/i18n
Internationalization functions for JavaScript
Webpack Plugins
Custom webpack plugins for optimized asset compilation
Plugin Development (Bifrost Music)
PHP Dependencies (via Composer)
Same as theme requirements (see above).Node.js Dependencies (via npm)
Production Requirements
Server Environment
Production deployments should use optimized builds without development dependencies.
| Component | Requirement |
|---|---|
| Web Server | Apache 2.4+ with mod_rewrite OR Nginx 1.18+ |
| PHP | 8.1+ with OPcache enabled |
| Database | MySQL 5.7+ OR MariaDB 10.5+ |
| Memory Limit | 256 MB minimum (512 MB recommended) |
| Max Execution Time | 60 seconds minimum |
Production Build Commands
Local Development Environment Options
Any of the following local development environments will work:Local by Flywheel
Recommended for beginners. Provides one-click WordPress setup with easy PHP version switching.
Docker / wp-env
Official WordPress Docker environment. Great for consistent development across teams.
XAMPP / MAMP
Traditional local server stacks. More manual configuration required.
Laravel Valet
For macOS developers. Lightweight and fast with minimal configuration.
Example: Local by Flywheel Configuration
- PHP Version: 8.1 or higher
- Web Server: Nginx (default)
- Database: MySQL 8.0
- WordPress: Latest version
Example: wp-env Configuration
Create a.wp-env.json file:
Optional Components
Recommended Tools
Git
Version control system for contributing to the project
VS Code
Code editor with excellent WordPress development extensions
WP-CLI
Command-line interface for WordPress management and automation
Xdebug
PHP debugger for step-through debugging and profiling
Useful VS Code Extensions
- PHP Intelephense - PHP code intelligence
- WordPress Snippets - WordPress function snippets
- ESLint - JavaScript linting
- Prettier - Code formatting
- EditorConfig - Consistent coding styles
Browser Requirements
Development
For Block Editor development, use modern browsers:- Chrome 90+ (recommended for DevTools)
- Firefox 88+
- Safari 15+
- Edge 90+
Production
The theme and plugin are compatible with:- All evergreen browsers (auto-updating)
- IE11 is not supported (consistent with WordPress 6.9+ policy)
Deployment Environment
The showcase includes automated deployment workflows for:GitHub Actions Requirements
| Requirement | Description |
|---|---|
| GitHub Environments | Separate production and staging environments |
| SFTP Credentials | For automated vendor folder deployment |
| Repository Secrets | SFTP_USER, SFTP_PASSWORD, SFTP_KNOWN_HOSTS |
See the CONTRIBUTING.md file for detailed deployment workflow information.
Verification Checklist
Before starting development, verify your environment meets these requirements:Troubleshooting
PHP Version Errors
Error: “Parse error: syntax error, unexpected token…” Solution: Your PHP version is too old. Upgrade to PHP 8.1 or higher.Node.js Version Errors
Error: “This version of Node.js requires a newer version…” Solution:Composer Installation Issues
Error: “Fatal error: Allowed memory size…” Solution:Next Steps
Once you’ve verified all requirements are met:Proceed to Setup
Follow the step-by-step installation guide to get the showcase running locally
