baks-dev/materials-sign
Laravel/PHP модуль для работы с «Честным знаком» по сырью: импорт и обработка кодов маркировки, генерация/печать этикеток и штрихкодов. Поддерживает загрузку файлов, обрезку PDF (pdfcrop/ImageMagick) и установку ассетов/миграций.
Symfony/Laravel Alignment:
baks-dev/core (v7.4.x) may force forking if Laravel-specific changes are needed, violating the MIT license’s "no warranty" clause.Domain-Specific Constraints:
Performance Bottlenecks:
pdftk/ImageMagick introduce latency in PDF processing, especially under high load. No async/queue support (e.g., Laravel Queues) is documented, risking blocking I/O operations in web requests.Dependency Conflicts:
baks:assets:install command lacks Laravel Artisan compatibility, necessitating custom wrappers or alias overrides.File System Rigidity:
public/upload/material_sign_code directory is non-configurable, forcing monolithic storage or symlink workarounds for multi-tenant setups. This violates Laravel’s filesystem abstraction (e.g., storage_path()).Testing Gaps:
phpunit --group=materials-sign tests are Symfony-specific, leaving Laravel integrations untested. This introduces regression risks during deployment.Server-Side Complexity:
pdftk, imagemagick, and texlive require manual installation and sudo privileges, complicating CI/CD pipelines and cloud deployments (e.g., AWS ECS, Heroku). Containerization (Docker) is undocumented, adding DevOps overhead./etc/ImageMagick-6/policy.xml is environment-specific, risking permission errors in production.Blockchain Assumptions:
Long-Term Viability:
baks-dev/core with Laravel-native alternatives (e.g., spatie/laravel-activitylog for auditing) to reduce lock-in?pdftk) meet SLA requirements (e.g., <500ms response time) under peak load?pdftk/ImageMagick across staging/production environments?barryvdh/laravel-dompdf for PDFs) or fully adopt the package despite risks?Laravel Compatibility Matrix:
| Component | Compatibility | Workaround Required |
|---|---|---|
| Doctrine ORM | ❌ Low (Eloquent conflict) | Use Doctrine DBAL or rewrite migrations. |
| Symfony Console | ❌ Low (Artisan incompatibility) | Create Laravel Artisan wrappers. |
baks-dev/core |
❌ Low (Symfony-centric) | Fork or use SymfonyBridge. |
| PDF/Barcode Generation | ✅ High (PHP libraries) | None (but external tools add complexity). |
| File Storage | ❌ Medium (hardcoded paths) | Use symlinks or custom filesystem drivers. |
Alternative Packages:
endroid/qr-code (Laravel-native).barryvdh/laravel-dompdf + spatie/pdf-to-image (avoids pdftk).filesystem abstraction (replaces hardcoded paths).Phase 1: Assessment (1–2 weeks)
pdftk/ImageMagick.Phase 2: Dependency Isolation (2–3 weeks)
pdftk/ImageMagick for consistent environments.Storage facade.Phase 3: Core Integration (3–4 weeks)
baks:assets:install with Laravel Artisan commands.Phase 4: Testing & Optimization (2 weeks)
Phase 5: Deployment (1 week)
pdftk/ImageMagick failures.pdftk, imagemagick, and texlive in staging/production.ext-imagick and ext-pdo are enabled.How can I help you explore Laravel packages today?