thormeier/slides-generator-bundle
A Symfony bundle for generating slide decks and presentations from your PHP application. Build slides programmatically, then export polished HTML-based decks, making it easy to automate reports, talks, and data-driven presentations directly from your existing Symfony services.
The 0.0.1 release notes contain only “First release of the bundle” — no feature list, no upgrade path, no documented API. Treat this as an early spike, not a production dependency. The version number is the most important signal: expect breaking changes between any two 0.x releases.
Start by locating the package surface, in this order:
composer.json — confirm the package name, PHP/Laravel version constraints, autoload map, and whether a service provider is auto-discovered under extra.laravel.providers. If that block is missing, you must register the provider manually in bootstrap/providers.php (Laravel 11+) or config/app.php.src/ — find the service provider first. It tells you what is bound into the container, what config is merged, what commands, migrations, routes, or views are loaded, and whether the provider is deferred.config/ — check for a publishable config file and read every key. This is usually the real API documentation at 0.0.1.tests/ — if tests ship with the package, read them as the de facto specification. At this stage they are more reliable than any README.README.md / CHANGELOG.md — likely thin; note what is absent so you know what to verify yourself.First use case: install it in a throwaway Laravel application, not your main codebase.
composer require <vendor>/<package>:0.0.1
php artisan vendor:publish --provider="<Vendor>\<Package>\<Package>ServiceProvider"
php artisan about
Then write one smoke test that resolves the package’s main binding or facade from the container and asserts a trivial behavior. If you cannot get that test green within an hour, the package is not ready for day-to-day use.
Pin the exact version ("0.0.1", not "^0.0") and commit the lockfile.
Because the public API is undocumented, the primary pattern is containment: assume the package will break and design so that breakage is cheap.
config/<package>.php, drive environment-specific values through env() only in your app config — never rely on the package reading env() directly, because that breaks under php artisan config:cache.^0.0.1 constraint only allows 0.0.x patches, but even patch releases can break in practice at this stage. Pin exactly and upgrade deliberately.php artisan about and composer show <vendor>/<package> to confirm the provider registered. If you also register it manually, you can get duplicate bindings or double-loaded routes.--force after reading the diff.env() inside package config silently returns null once config is cached. If the package does this, you will only see the bug in production or CI. Grep the package config for env(.config:cache or in queued jobs before boot). Test resolution inside a queued job and an Artisan command.php artisan tinker to resolve the binding, app()->bound(...), php artisan vendor:publish --provider=..., and composer show -t to inspect the dependency tree.How can I help you explore Laravel packages today?