Top 10 Symfony2 Bundles

August 17, 2016 | No Comments | Programming | PHP Symfony2

Symfony2 is a great tool for rapid development. And I want to present Top 10 Symfony2 Bundles which will save you huge amount of time in your development practice. Your clients will be amazed at how quickly and easily you develop new functionality. So let’s start:

1. Sonata admin bundle

It’s definitely top 1 bundle in this list. Every project needs admin area with good design and extendable functionality. Sonata Admin Bundle has perfect extendability and it will take less than a hour to set up CRUD operations for every table in your project.

Docs https://sonata-project.org/bundles/admin
Github https://github.com/sonata-project/SonataAdminBundle

2. FOSUserBundle

Symfony2 doesn’t have built in authentications system as Laravel for example. But not every project need authentication and it’s reasonable. If you need authentication then you have to install FOSUserBundle. It will take few minutes and you will have all needed functionality and tables with user/roles and registration/login/password resetting pages. You can easily override/extend each part of this bundle.

Docs https://symfony.com/doc/master/bundles/FOSUserBundle/index.html
Github https://github.com/FriendsOfSymfony/FOSUserBundle

3. FOSRestBundle

You need SPA application with API server built on top of symfony2 ? Then it’s the first bundle that you have to install. It’s just perfect tool for API building. Can work with xml/json/html. Also it’s great with NelmioApiDocBundle when it comes to documentation of your API.

Docs http://symfony.com/doc/current/bundles/FOSRestBundle/index.html
Github https://github.com/FriendsOfSymfony/FOSRestBundle

4. HWIOauthBundle

I use bundle this bundle in every project where I need social authentication. It has 37+ social Oauth Providers and you can set up every provider for less than a hour. It also has integration with FOSUserBundle.

Docs https://github.com/hwi/HWIOAuthBundle/blob/0.4/Resources/doc/index.md
Github https://github.com/hwi/HWIOAuthBundle

5. Doctrine Extensions Bundle

Must have in every project. Almost all projects have fields like createdBy/createdAt in database. And this provide listeners for such functionality. But it’s really small part of this bundle. It can provide listeners for trees(categories for example), soft deletable, media uploads and other complex ORM operations. Just read docs and you will find something useful for your projects.

Docs http://symfony.com/doc/current/bundles/StofDoctrineExtensionsBundle/index.html
Github https://github.com/stof/StofDoctrineExtensionsBundle

6. DoctrineFixturesBundle

Fixtures is #1 tool for testing. You may not have functional/unit tests in your projects but you must have fixtures. With one simple command you can fill your database with test data and reach needed part of you application in few seconds instead of filling test data by hands every time.

Docs http://symfony.com/doc/current/bundles/DoctrineFixturesBundle/index.html
Github https://github.com/doctrine/DoctrineFixturesBundle

7. DoctrineMigrationsBundle

This tool usually is for productions environment but I would suggest to install it from start to keep your database structure in files. It will save you huge amount of time on production/staging servers.

Docs http://symfony.com/doc/current/bundles/DoctrineMigrationsBundle/index.html
Github https://github.com/doctrine/DoctrineMigrationsBundle

8. KnpMenuBundle

This bundle simple and powerful. You need menu ? Then install this bundle without any doubt. Absolutely DRY way for creating menus.

Docs http://symfony.com/doc/current/bundles/KnpMenuBundle/index.html
Github https://github.com/KnpLabs/KnpMenuBundle

9. KnpPaginatorBundle

Same as with menu. Need pagination ? Install it.

Docs http://knplabs.com/en/blog/knp-paginator-reborn
Github https://github.com/KnpLabs/KnpPaginatorBundle

10. PayumBundle

Best bundle for payment integration. You can even implement custom payment gateway with good provided structure by this bundle. It supports all popular gateways and actions such as refund/subscription etc.

Docs https://github.com/Payum/Payum/blob/master/src/Payum/Core/Resources/docs/index.md
Github https://github.com/Payum/PayumBundle

About the Author / Artem Zhuravlev

Artem Zhuravlev. Web developer. Blog writer.

Need help with your website ? Contact with me by email infzanoza@gmail.com for services of experienced web developer.

Follow @infernosquad

LEAVE A COMMENT