| Repository | Coverage | Repository | Coverage |
|---|---|---|---|
| php-dev-build | php-dev-cs-fixer-custom-fixers |
A comprehensive PHP development toolkit that provides modern development tools, custom PHP-CS-Fixer fixers, build automation, and hot reloading capabilities for Symfony applications. This library enhances development workflow efficiency with integrated tooling for frontend builds, code quality, and real-time development features.
- Build Tools: Hot reloading, asset compilation, import map management, and development workflow automation
- Custom PHP-CS-Fixer Fixers: Enhanced code quality enforcement with modern PHP 8.4+ best practices
- Hot Reloading: Automatic browser reload on file changes using inotify
- Asset Management: Integrated support for ESBuild, Tailwind CSS, and DaisyUI
- Binary Management: Unified binary download and version management for build tools
- Process Orchestration: Coordinated execution of multiple development services
- SSE Integration: Seamless integration with Server-Sent Events for live updates
- PHP 8.4 or higher
- inotify extension (for file watching)
- PCNTL extension (for process management)
- POSIX extension
- friendsofphp/php-cs-fixer (3.81.0 or higher)
- symfony/framework-bundle (7.2.0 or higher)
- Valksor Bundle and related components
Install the package via Composer:
composer require valksor/php-devThis meta-package automatically includes:
valksor/php-dev-build- Build tools and hot reloadingvalksor/php-dev-cs-fixer-custom-fixers- Custom PHP-CS-Fixer fixers
- Register the bundle in your Symfony application:
// config/bundles.php
return [
// ...
Valksor\Bundle\ValksorBundle::class => ['all' => true],
// ...
];- Enable the build tools and configure:
# config/packages/valksor.yaml
valksor:
build:
enabled: true
hot_reload:
enabled: true
watch_paths:
- 'templates/'
- 'src/'
- 'assets/'# Start all development tools (hot reload, asset compilation, etc.)
php bin/console valksor:watch// .php-cs-fixer.php
use PhpCsFixer\Config;
use ValksorDev\PhpCsFixerCustomFixers\Fixers;
$config = new Config();
$config
->setRules([
'@PSR12' => true,
'ValksorPhpCsFixerCustomFixers/declare_after_opening_tag' => true,
'ValksorPhpCsFixerCustomFixers/promoted_constructor_property' => true,
// Add more custom fixers as needed
]);
// Register custom fixers
$fixers = new Fixers();
foreach ($fixers as $fixer) {
$config->registerCustomFixers([$fixer]);
}
return $config;- Build Tools Documentation - Complete guide for build tools, hot reloading, and asset management
- Custom Fixers Documentation - All available PHP-CS-Fixer custom fixers and their usage
- API Reference - Full API documentation and examples
- Configuration Guide - Detailed configuration options
valksor:
build:
enabled: true
hot_reload:
enabled: true
watch_paths:
- 'templates/'
- 'src/Controller/'
- 'assets/js/'
exclude_patterns:
- 'vendor/'
- 'var/'
debounce_ms: 100
sse_port: 8080
tailwind:
enabled: true
input: 'assets/css/app.css'
output: 'public/build/app.css'
minify: false
binaries:
download_dir: 'bin/build-tools/'
esbuild_version: 'latest'
tailwind_version: 'latest'The toolkit integrates seamlessly with modern Symfony development workflows:
- Real-time Development: Automatic browser reload on template, CSS, JavaScript, and PHP changes
- Asset Compilation: Integrated Tailwind CSS compilation with DaisyUI components
- Import Maps: Automatic JavaScript import map generation and synchronization
- Code Quality: Enhanced PHP-CS-Fixer with modern PHP 8.4+ best practices
Contributions are welcome! Please read our Contributing Guidelines for details on:
- Code style requirements (PSR-12)
- Testing requirements for PRs
- One feature per pull request
- Development setup instructions
To contribute:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Add tests for new functionality
- Ensure all tests pass
- Submit a pull request
If you discover any security-related issues, please email us at security@valksor.dev instead of using the issue tracker.
For security policy and vulnerability reporting guidelines, please see our Security Policy.
- Documentation: Full documentation
- Issues: GitHub Issues for bug reports and feature requests
- Discussions: GitHub Discussions for questions and community support
- Stack Overflow: Use tag
valksor-php-dev
- Original Author - Creator and maintainer
- All Contributors - Thank you to all who contributed
- Inspiration - Inspired by PHP-CS-Fixer ecosystem
- Valksor Project - Part of the larger Valksor PHP ecosystem
This package is licensed under the BSD-3-Clause License.