Repository navigation
Releases: dimitriBouteille/wp-foundation
Releases · dimitriBouteille/wp-foundation
Release list
v1.0.0-rc.1
🚀 First release candidate of WordPress Foundation
This is the first public version of dbout/wp-foundation, a lightweight application foundation for WordPress: service container, attribute-based routing, WP-CLI commands, Twig views, validation, cache and security hardening,
built on Symfony and Illuminate components.
Important
This is a release candidate: the API is considered stable for 1.0.0, only bug fixes will be made until the final version. Please test it on a real project and report any issue.
📦 Installation
composer require dbout/wp-foundation:^1.0@RCSee the getting started guide to bootstrap the application from a mu-plugin.
✨ Features
- Application: service container (Illuminate) with service providers and facades, configuration files merged with the default configuration of the package
- Routing: routes declared with PHP attributes on top of Symfony Routing, controllers discovered from PSR-4 namespaces, URL generation, routes cached in production. A URL without a route is handled by WordPress
- HTTP: view, redirect, JSON and error responses, HTTP exceptions
- Console: WP-CLI commands declared with a #[Command] attribute
- Views: Twig with the WordPress functions, assets from a Vite manifest, image resizing and WebP conversion
- Validation: Symfony Validator with attribute constraints, hydration from a request (query, form or JSON body) or a WP_REST_Request, spam protection (honeypot and minimum submit time), messages translated with the WordPress
translations - Cache: Symfony Cache, disabled outside production, cleared with wp app:cache:clear
- Dates: Carbon locale following the language of WordPress (WPML / Polylang, switch_to_locale())
- Logging: Illuminate logger
- Security: HTTP security headers, XML-RPC, REST API, user enumeration (author pages, REST users endpoint, oEmbed), version and more. Only the protections without visible effect are enabled by default