Published
12/12/2019
Categories
Software
Tags
Symfony, PHP

What Is Symfony?

Overview

What is Symfony?

Symfony is a general purpose web application framework. In more layman’s terms, it is a system for building advanced customized websites and Internet software. It includes foundational programming libraries that give developers a jumping off point that enables focus on the details of the software to be written, instead of the tools needed to get off the ground.

Symfony is an open source project that was originally developed by Fabien Potencier and his company, Sensio Labs out of Paris, France. Today Symfony is supported by a worldwide collection of high achieving web and software developers who uphold higher standards for software architecture and testing than the majority of open source projects.

This worldwide group of developers have contributed numerous libraries of code, dubbed “bundles” in the parlance of Symfony, to advance the purposes of any developer familiar with the platform. Bundles exist for common needs like content management, database administration, search, templating, and many other software needs large and small.

Differences

How is Symfony different from WordPress or Drupal?

One way to imagine it is to compare WordPress and Drupal to a prefabricated home, and Symfony to a custom home.

With the prefab you can spruce up the interior, paint the exterior, and maybe move a wall or two if you really need to. With custom home, you start with milled lumber and other refined materials. You decide where everything goes.

Notice we called it refined materials, not raw materials. Raw would be starting with no framework at all, just the programming language itself, your axe, to chop down trees with. No thanks, I’ll skip that part.

Dropping the metaphor, WordPress and Drupal enforce a lot of pre-built structure on you. That’s fine if your needs fit nicely into that structure, but it’s not appropriate for projects that have unique requirements, many custom features, and which may grow in unpredictable ways.

Built with Symfony

Should my project be built with Symfony?

Maybe. Let’s consider the nature of your site and goals in order to determine the right platform.

First, if you’re just doing straight ahead e-commerce with a product catalog and shopping cart, then you will probably be best served by a focused e-commerce platform like Magento.

Next, if you’re just doing a straight up blog, or magazine, or news site, then WordPress or Drupal will probably fit the bill.

Next, if your site is for marketing your business, and will primarily contain information about your products and/or services, with the purpose of generating leads, but not too heavy on the interactive features for your customers, then again, WordPress or Drupal are probably the way to go.

Finally, if your site fits none of the above descriptions, then it is probably a good candidate for a framework like Symfony. Symfony is the right starting place for custom web applications. For instance, a custom database application for managing your business, a customer service portal, a corporate intranet, a new social network, an API that exposes your business data to vendors or customers.

When in doubt, let an expert with broad experience guide you. Find an experienced Symfony developer who has also built many sites with many different platforms, listen to their advice, and, as always, trust your intuition.

Tips & Tricks

What are some Symfony tips and tricks?

  • Discover the Sonata Project.

    The Sonata Project is one of the major sub-projects of Symfony. The developers involved have produced some very foundational bundles that nearly every Symfony project can benefit from. These include the Admin Bundle to develop the backend interface for your site, an SEO bundle, a News (blog) bundle, a Media bundle, and many more.

  • Discover the CMF project.

    Symfony CMF provides a content management framework so that a content management system can be designed and developed on top of Symfony. This is a very powerful solution for sites that need to blend the features of a standard CMS with other custom requirements like internationalization / multi-lingual, a user log in system with advanced features and security, or other interactive systems.

  • Assetic is your friend.

    Assetic is a tool that integrates with Symfony to minify your JS and CSS. This practice will help to reduce page load times.

  • Know your caching systems.

    Symfony provides tools for caching responses and objects of data within your system. Study the config_prod.yml file and the caching related articles in the Symfony documentation.

Learn More

Schedule your FREE discovery call now!

Every project is unique. Your goals, your clients and shipping should cater to your specific case.

In our discovery call, we’ll get to know you. We’ll ask you questions about your business. We’ll ask you questions about your website. We’ll listen, learn and ask more questions.

Every project with Endertech begins with discovering and understanding your needs. That’s how we’re able to build a versatile, custom ecommerce website that our clients (their teams, their CEOs, and their customers) love.

What else can we cover?

  • Do you wish to discuss what an Symfony website costs?

  • Are you curious if we can build your large scope project?

  • Are you still deciding if Symfony is right for your project?

  • Do you wish to learn more about our inventive team?

  • Do you worry about deadlines and delivery schedules?

Click here to schedule your FREE discovery call with one of our cheerful team members now and ask us anything.

Once we receive your message we’ll get back to you via your preferred method by the next business day. For faster answers, call 310.400.0800 during normal business hours.

Not ready to talk? No pressure. You’re welcome to click around our website if you’d like to learn more about how we can help you!