Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

MEAN

344
617
+ 1
594
Symfony

8.3K
6.2K
+ 1
1.1K
Add tool

MEAN vs Symfony: What are the differences?

<Write Introduction here>
  1. Architecture: Symfony is a PHP web application framework built around the Model-View-Controller (MVC) architecture, offering flexibility and extensibility. On the other hand, MEAN stack (MongoDB, Express.js, AngularJS, Node.js) is a full-stack JavaScript framework that enables developers to build dynamic, single-page web applications.

  2. Language: Symfony is based on PHP, a server-side scripting language, known for its simplicity and wide usage in web development. In contrast, MEAN stack utilizes JavaScript for both server-side and client-side development, allowing for a unified language across the stack.

  3. Database: Symfony supports a variety of databases through Doctrine ORM, including MySQL, PostgreSQL, and SQLite. In contrast, MEAN stack primarily uses MongoDB, a NoSQL database, which allows for flexible and scalable data storage.

  4. Real-Time Capabilities: MEAN stack, with the help of Node.js, is well-suited for real-time applications due to its event-driven architecture. Symfony, while capable of handling real-time features with additional tools, may not be as optimized for such applications out of the box.

  5. Community Support: Symfony has a large and active community with a wealth of resources, plugins, and documentation available. MEAN stack, being relatively newer compared to Symfony, may have a smaller community, leading to fewer resources and support options.

  6. Scalability: Symfony, with its robust architecture and caching mechanisms, is well-suited for large-scale enterprise applications that require high performance and scalability. MEAN stack, on the other hand, may require additional configurations and optimizations to achieve the same level of scalability as Symfony.

In Summary, MEAN stack and Symfony differ in terms of architecture, programming language, database support, real-time capabilities, community support, and scalability.

Advice on MEAN and Symfony
Quade Claxton
Needs advice
on
DjangoDjango
and
SymfonySymfony

Hi everyone! I'm starting a personal project that I've been postponing for a little while and I need a bit of advice. I thought that it will be a bit of a challenge but I figure the best way to learn is by doing!

The plan is to build an app with loads of automation build in for reporting which would make it very easy to perform tasks, The plan is to build something similar to an HR app using microservice architecture, separating services e.g. employee data, payroll (including calculations based on easily entered info like tax %), employee services (vacation, sick day allowance booking and tabulation) and automated reporting on a pre-defined schedule (bi-weekly, monthly).

I am considering Django (as I currently know a bit of Python) and Symfony (as a friend who is a developer recommended it) but I am well aware there are other (and probably better) tools out there for the job (like maybe ExpressJS/Node.js for the backend and React/Vue.js for the front).

Background:

I have got knowledge as a DevOps, Site Reliability and Cloud engineer so once the app is built I'm very comfortable taking it to deployment.

Thank you all for your help and responses.

See more
Replies (1)
Ibrahim Gunduz
Software Developer at PayU · | 2 upvotes · 52.9K views
Recommends

Hi. I guess it all depends on what your goal is. If you wanna make fast prototyping Django or ExpressJNodeJS might be really good candidates. You can write your services quickly and easily by using anyone of them. Maybe we can also put Laravel in the same category.

Symfony is also another application framework that comes with many reusable components. It provides great flexibility with the configuration and dependency management solutions. So that you can inject or override anything, anytime without doing something hack-ish. You don't have to depend on any components that come with the framework and, replace them with whatever you prefer unless encounter any integration issues. I can say that Laravel also provides most of the Symfony futures as it uses its components under the hood. However, my personal experience with Laravel was not so good because it made me feel like I use a modernized version of Codeigniter. But anyway. :) So if I have to choose one of them, I would choose Symfony.

From the backend perspective, all of those have some pros and cons. For example, If strict type declaration is important for you and you don't like code magics like monkey patching etc., maybe Python and NodeJS might not be good candidates and maybe you could choose Symfony/php. However, in this case, you'll be missed out on the most powerful future of NodeJS which is non-blocking io. if you plan to do IO-intensive works, I think it would be a big loss.

So, maybe I can recommend you to have a look at typescript + NestJS also. https://nestjs.com/ The futures that NestJS provides might be a good balance between the strengths of Symfony and NodeJS.

As I'm backend dev., I haven't work too many frontend projects but from my personal experience, I loved ReactJS more than Vue although Vue was simpler. Maybe a front-end developer can give us more helpful details about those.

Hope it helps.

See more
Needs advice
on
GolangGolangNode.jsNode.js
and
SymfonySymfony

I'm about to begin working on an API, for which I plan to add GraphQL connectivity for processing data. The data processed will mainly be audio files being downloaded/uploaded with some user messaging & authentication.

I don't mind the difficulty in any service since I've used C++ (for data structures & algorithms at least) and would also say I am patient and can learn fairly quickly. My main concerns would be their performance, libraries/community, and job marketability.

Why I'm stuck between these three...

Symfony: I've programmed in PHP for back-end in a previous internship and may do so again in a few months.

Node.js: It's newer than PHP, and it's JavaScript where my front-end stack will be React and (likely) React Native.

Go: It's newer than PHP, I've heard of its good performance, and it would be nice to learn a new (growing) language.

See more
Replies (1)
Max Musing
Founder & CEO at BaseDash · | 6 upvotes · 215.3K views
Recommends
on
Node.jsNode.js
at

Go with Node.js. There's something really satisfying about being able to use a single language across your entire tech stack. Especially once you integrate GraphQL, which is effectively JSON.

Your second best option is Go, but the ecosystem around Node.js is quite a bit stronger. This will play a big factor when you start building functionality like file management, messaging (especially in real-time), and authentication. The libraries and documentation are just stronger for Node.

See more
Decisions about MEAN and Symfony
Danilo Polani
Senior Software Engineer at WeRoad · | 7 upvotes · 101.8K views

For a full-stack app or just simple APIs I'd go 100% with Laravel. You get a clean architecture, beautiful documentation and friendly and always growing community: the project is yours, from A to Z. With their docs and resources like Laracast you can start from zero and build what you want, when you want. The learning curve is definitely smaller when compared to Symfony and, with the help of a bit of "magic" (Facades etc.) you get the same results in the half of the time with cleaner code.

See more
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of MEAN
Pros of Symfony
  • 86
    Javascript
  • 62
    Easy
  • 58
    Nosql
  • 52
    Great community
  • 50
    Mongoose
  • 50
    Modularity
  • 48
    Open source
  • 37
    Organized
  • 32
    Simple
  • 31
    Boilerplate
  • 10
    AngularJs
  • 9
    CLI
  • 9
    It's simply awesome
  • 8
    Cutting edge tech
  • 7
    Passport
  • 6
    It's a great new exciting stack
  • 6
    Yeoman
  • 6
    Docs
  • 5
    Friendly & Fun
  • 4
    Great Flexibility ;)
  • 4
    The WordPress of javascript apps
  • 3
    Genius
  • 2
    Modular
  • 2
    Scalable
  • 2
    JavaScript only
  • 1
    Growing Community
  • 1
    It's fun and has great potential
  • 1
    Gulp
  • 1
    Because i can write everything using javascript
  • 1
    Fast
  • 0
    The best
  • 177
    Open source
  • 149
    Php
  • 130
    Community
  • 129
    Dependency injection
  • 122
    Professional
  • 80
    Doctrine
  • 75
    Organized
  • 71
    Modular architecture
  • 47
    Smart programming
  • 45
    Solid
  • 20
    Documentation
  • 16
    LTS releases
  • 10
    Decoupled framework components
  • 10
    Robust
  • 10
    Easy to Learn
  • 8
    Good practices guideline
  • 8
    Service container
  • 8
    Bundle
  • 7
    Powerful
  • 7
    Simple
  • 6
    Flexible

Sign up to add or upvote prosMake informed product decisions

Cons of MEAN
Cons of Symfony
    Be the first to leave a con
    • 10
      Too many dependency
    • 8
      Lot of config files
    • 4
      YMAL
    • 3
      Feature creep
    • 1
      Bloated

    Sign up to add or upvote consMake informed product decisions

    252
    18
    4K
    304
    13.9K
    74K

    What is MEAN?

    MEAN (Mongo, Express, Angular, Node) is a boilerplate that provides a nice starting point for MongoDB, Node.js, Express, and AngularJS based applications. It is designed to give you a quick and organized way to start developing MEAN based web apps with useful modules like Mongoose and Passport pre-bundled and configured.

    What is Symfony?

    It is written with speed and flexibility in mind. It allows developers to build better and easy to maintain websites with PHP..

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use MEAN?
    What companies use Symfony?
    Manage your open source components, licenses, and vulnerabilities
    Learn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with MEAN?
    What tools integrate with Symfony?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to MEAN and Symfony?
    Mode
    Created by analysts, for analysts, Mode is a SQL-based analytics tool that connects directly to your database. Mode is designed to alleviate the bottlenecks in today's analytical workflow and drive collaboration around data projects.
    JavaScript
    JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
    Python
    Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
    Node.js
    Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
    HTML5
    HTML5 is a core technology markup language of the Internet used for structuring and presenting content for the World Wide Web. As of October 2014 this is the final and complete fifth revision of the HTML standard of the World Wide Web Consortium (W3C). The previous version, HTML 4, was standardised in 1997.
    See all alternatives