- How do I install lyssal/blog-bundle in a Symfony application?
- Install it with Composer using composer require lyssal/blog-bundle. With Symfony Flex the bundle is usually registered automatically; otherwise enable it in config/bundles.php. After that, make sure Doctrine is configured to load the bundle's entity mappings and run a migration or schema update to create the post, category, tag and comment tables.
- Which Symfony and Doctrine versions does lyssal/blog-bundle support?
- The bundle is built on standard Symfony bundle conventions and Doctrine ORM entities, so it works with any project that already uses those components. Exact version constraints are declared in the package's composer.json, so check that file on Packagist or GitHub before upgrading Symfony or Doctrine. If you are on an older or newer major version, verify the constraint allows it or fork and adjust.
- Do I have to write my own controllers and templates for the blog?
- Yes. The bundle deliberately ships only the data model, so it makes no assumptions about routing, URLs, HTML or admin screens. You create your own controllers, forms and Twig templates on top of the provided entities and repositories. That keeps it flexible for existing applications with their own layout and design system.
- How do I add custom fields to the blog Post entity?
- The model is designed for extension through mapped superclasses and inheritance. Create your own entity that extends the bundle's base class, add your properties, and point Doctrine at your class using the appropriate mapping or target-entity configuration. This lets you keep the bundle's repositories and associations while owning the fields you need.
- How are posts, categories, tags and comments connected in the data model?
- Posts are related to categories and tags through Doctrine associations, and comments are attached to posts. The bundle's repositories include common queries such as fetching published posts, posts by category or tag, and comments for a given post. Because everything is plain Doctrine, you can query the entities directly or extend the repositories with your own methods.
- Does lyssal/blog-bundle include an admin panel for managing posts?
- No dedicated admin UI is bundled; the focus is the entity and repository layer rather than screens. In practice you would build the CRUD yourself or pair the entities with a Symfony admin generator such as EasyAdmin. This keeps the bundle lightweight and avoids forcing a particular back-office design on your project.
- Can I use lyssal/blog-bundle in a Laravel application?
- No. This is a Symfony bundle that depends on Symfony's bundle system, dependency injection and Doctrine integration, so it will not work with Laravel's Eloquent-based architecture. Laravel developers should look at Laravel-specific blog packages or build equivalent models with Eloquent. The underlying idea, a clean model layer with no UI assumptions, is easy to reproduce in Laravel.
- How do I test an application that uses lyssal/blog-bundle?
- Use a standard Symfony test setup with a test kernel and an in-memory SQLite database, then load the bundle's entity mappings in your test configuration. From there you can persist posts and comments in fixtures and assert against the repository methods. If you are contributing to the bundle itself, run its existing PHPUnit suite and add coverage for any queries you change.
- Is lyssal/blog-bundle actively maintained and safe for production?
- It is a small, focused bundle, so it needs less churn than a full CMS, but you should still check the repository's recent commits, releases and open issues before adopting it. Pin the version in your composer.json and review the entity mapping against your own requirements. Because you own the controllers and templates, the bundle has a limited blast radius in a production application.
- What are the alternatives to lyssal/blog-bundle for a Symfony blog?
- Larger options include content bundles such as SonataNewsBundle or a full CMS built on Symfony, which bring admin interfaces but also more dependencies. Another common approach is defining your own Post, Category and Comment entities with Doctrine and EasyAdmin, which gives complete control. lyssal/blog-bundle sits in the middle: more structure than hand-rolled entities, far less weight than a CMS.