jaspur/coding-flow

Laravel package voor geautomatiseerde repositories, services, DTO's en tests

v1.1.1 2025-03-17 13:13 UTC

This package is auto-updated.

Last update: 2025-03-17 13:27:07 UTC


README

πŸš€ CodingFlow is een Laravel package dat automatisch repositories, services, DTO’s, API resources en tests genereert op basis van Laravel Blueprint.
Hierdoor kun je sneller een gestructureerde en schaalbare codebase opzetten met best practices.

πŸ“Œ Installatie

composer require jaspur/coding-flow --dev

Na installatie kun je de configuratie publiceren met:

php artisan vendor:publish --tag=codingflow-config

⚑ Gebruik

Je kunt de complete projectstructuur genereren met één command:

php artisan codingflow:generate-all

Individuele componenten genereren:

php artisan codingflow:generate-repositories
php artisan codingflow:generate-services
php artisan codingflow:generate-dtos
php artisan codingflow:generate-api-resources
php artisan codingflow:generate-feature-tests
php artisan codingflow:generate-observers

Wil je dat CodingFlow automatisch bijhoudt welke modellen en controllers gegenereerd moeten worden?
Dat kan via Laravel Blueprint! Zorg dat je een blueprint.yaml hebt en voer uit:

php artisan blueprint:build && php artisan codingflow:generate-all

βš™ Configuratie

Het config/codingflow.php bestand bevat alle instellingen voor welke componenten worden gegenereerd en waar de bestanden worden opgeslagen.

Voorbeeldconfiguratie:

return [
    'overwrite_existing_files' => false,

    'generators' => [
        'repositories'   => true,
        'services'       => true,
        'dtos'           => true,
        'api_resources'  => true,
        'feature_tests'  => true,
        'observers'      => true,
    ],

    'paths' => [
        'repositories'   => app_path('Repositories'),
        'services'       => app_path('Services'),
        'dtos'           => app_path('DTOs'),
        'api_resources'  => app_path('Http/Resources'),
        'feature_tests'  => base_path('tests/Feature'),
        'observers'      => app_path('Observers'),
    ],

    'watch_blueprint' => true,

    'code_quality' => [
        'phpstan' => true,
        'pint'    => true,
        'rector'  => true,
    ],
];

βœ… Wat genereert CodingFlow?

πŸ— Component πŸ“„ Bestandsstructuur
Repositories app/Repositories/PostRepository.php
Services app/Services/PostService.php
DTO’s app/DTOs/PostDTO.php
API Resources app/Http/Resources/PostResource.php
Feature Tests tests/Feature/PostTest.php
Observers app/Observers/PostObserver.php

πŸ›  Code Kwaliteit & Standaarden

CodingFlow ondersteunt automatisch: βœ… PHPStan (Level 9) voor statische analyse
βœ… Laravel Pint voor code formatting
βœ… Rector voor automatische code verbeteringen

Voer deze checks handmatig uit:

./prerelease.sh

🎯 Roadmap & Toekomstige Features

⏳ Configuratie toepassen ⏳ Extra validaties in DTO's

πŸ”₯ Wil je bijdragen? Fork de repo en stuur een PR!

πŸ“œ Licentie

CodingFlow wordt uitgebracht onder de MIT License.