- What is meetplume/plume used for in Laravel applications?
- meetplume/plume is a Laravel integration for Plume's markdown content utility, aimed at pages, docs, wikis, and similar content workflows. It provides a configurable API client, service bindings, helpers, and an Artisan command for publishing Plume assets. Developers use it to connect a Laravel app to Plume features without writing their own integration layer.
- How do I install meetplume/plume in a Laravel project?
- Install it with Composer using composer require meetplume/plume. Then follow the package's publishing steps for configuration and public assets, and add php artisan plume:update-assets to your deployment workflow after Composer updates. Check the README for any required service provider registration or environment variables.
- Which Laravel versions does meetplume/plume support?
- The provided context does not list supported Laravel versions. Check meetplume/plume's composer.json require constraints and the package release notes before upgrading. In general, match the package to your Laravel version and test in staging.
- How do I publish Plume assets and keep them current after Composer updates?
- The package publishes public assets under public/vendor/plume and provides plume:update-assets to remove and republish them. Run asset publishing during install, then use the update command after Composer updates. Verify the files resolve correctly from your application or CDN.
- What does the php artisan plume:update-assets command do?
- It deletes the existing public/vendor/plume directory and republishes the current package assets. It is intended as a deploy-time command after composer install or composer update. Because it mutates that directory, do not store custom files there unless you have a separate backup or publishing strategy.
- Where should plume:update-assets run in a Laravel deploy script?
- A recommended order is composer install or composer update, application setup steps, php artisan plume:update-assets, then frontend build and cache steps. In atomic deployments, run it inside the new release directory before switching the symlink. In multi-node setups, ensure each node or shared artifact receives the updated assets.
- Is plume:update-assets safe to run on every deployment?
- It is designed to be invoked as a deploy-time mutation step, but deletion before republishing means an interrupted run could temporarily remove assets. Test it in staging, confirm filesystem permissions, and avoid placing custom files under public/vendor/plume. The context does not confirm idempotency, so validate repeated runs in your pipeline.
- How do I configure the Plume API client and service bindings in Laravel?
- The package provides a configurable API client plus Laravel service bindings and helpers for common workflows. Publish any package config if instructed, then set API credentials and environment-specific values in your .env file. Exact configuration keys are not included in the provided context, so consult the package README or config file.
- How should I test Laravel code that depends on meetplume/plume?
- Because the package uses service bindings, you can swap or mock the Plume client in Laravel's container during tests. Use Laravel's HTTP fake or a mocked client implementation for API calls, and assert your helpers and workflows handle responses correctly. Keep deployment-only commands like plume:update-assets out of unit tests and cover them in staging deployment checks.
- Is meetplume/plume suitable for multi-node or atomic Laravel deployments?
- For atomic deployments, run plume:update-assets inside the new release directory before switching the symlink so rollback remains available. For multi-node or containerized deployments, publish assets into each release artifact or a shared storage/CDN, because running the command on one node may leave others with stale files. The command is additive in v0.10.5, but test permissions and path assumptions.