- What Laravel versions does capell-app/core officially support?
- The package does not specify Laravel version support in the provided details. You must test it against your target Laravel version (e.g., 10.x, 11.x) in isolation to check for service provider, Eloquent, or facade compatibility issues. Start with a clean Laravel install to avoid hidden conflicts.
- Does this package require specific database schemas or migrations?
- Yes, the package likely includes database assumptions like UUIDs, soft deletes, or custom columns, but the exact schema isn’t documented. Review any included migrations or seeders and compare them against your existing database to plan for conflicts or zero-downtime schema changes.
- How can I extend or override core functionality if there are no extension points?
- Without documented events, interfaces, or service extensions, you may need to use Laravel’s service container to rebind interfaces or monkey-patch core classes. Start by inspecting the package’s contracts and services to identify safe extension hooks, or consider forking if critical changes are needed.
- Will this package work with Laravel’s queue system or does it assume synchronous processing?
- The package’s queue assumptions aren’t clear, but if it relies on Laravel’s queue drivers (e.g., Redis, database), ensure your queue configuration matches. Test asynchronous jobs or listeners to confirm compatibility, especially if the package handles content workflows or notifications.
- Can I use capell-app/core in a headless CMS setup with API-only Laravel?
- Yes, the package is designed for structured content models, which align well with headless CMS architectures. However, verify that it doesn’t rely on Laravel’s session, Blade, or middleware (e.g., web routes) that would conflict with API-only setups. Test API endpoints consuming the shared models first.
- Are there security risks if I integrate this into a production Laravel app?
- Potential risks include undocumented input sanitization, CSRF assumptions, or auth dependencies. Audit the package for facade usage (e.g., Auth::) that might bypass your application’s security layer. If the package handles user-generated content, ensure it integrates with Laravel’s validation and sanitization pipelines.
- How do I test this package without breaking my existing Laravel app?
- Start by installing it in a separate Laravel project to test core functionality in isolation. Use Laravel’s `config` and `env` overrides to simulate your production environment. For contract testing, consider tools like Laravel’s HTTP tests or Pact to validate downstream services adhere to the package’s interfaces.
- What alternatives exist for shared content models in Laravel?
- Alternatives include Spatie’s Laravel Media Library (for media-heavy CMS), October CMS’s backend (monolithic), or custom packages like BeyondCode’s Laravel Packages for modular design. For DDD, consider using Laravel’s built-in service container with interfaces or packages like Nwidart’s Laravel Modules for stricter decoupling.
- Does this package support multilingual or localized content out of the box?
- The package doesn’t mention localization, so you’ll need to verify if it includes features like language fallbacks, translation tables, or integration with Laravel’s localization helpers. If not, you may need to extend the content models or use a package like Spatie’s Laravel Translatable for multilingual support.
- How should I handle upgrades if capell-app/core introduces breaking changes?
- Since the package lacks clear documentation on semver compliance, pin the version in your `composer.json` to avoid unexpected updates. Monitor the package’s changelog (if available) and plan for manual migrations or forks if breaking changes affect your critical paths. Consider contract testing to catch API changes early.