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

Phoenix Framework

939
989
+ 1
678
Symfony

8K
5.9K
+ 1
1.1K
Add tool

Phoenix Framework vs Symfony: What are the differences?

  1. Architecture: Phoenix Framework, built on Elixir, uses a more functional programming approach with a focus on concurrency and scalability, while Symfony, built on PHP, follows a more traditional object-oriented programming model with an emphasis on flexibility and maintainability.
  2. Language: Phoenix Framework utilizes the Elixir language, which is known for its high-performance and fault-tolerant capabilities, whereas Symfony is based on PHP, a widely-used scripting language that powers a large portion of the web.
  3. Performance: Phoenix Framework is designed to handle a high volume of requests efficiently due to its underlying Erlang VM, whereas Symfony might experience performance bottlenecks under heavy loads because of the nature of PHP.
  4. Learning Curve: Phoenix Framework may have a steeper learning curve for developers unfamiliar with functional programming concepts, whereas Symfony, with its more traditional approach, might be easier for developers already familiar with PHP and object-oriented programming.
  5. Community Support: Symfony, being built on PHP, has a larger community and ecosystem of third-party libraries and plugins available, making it easier to find solutions and resources compared to the relatively newer and smaller community around Phoenix Framework.
  6. Scalability: Phoenix Framework is known for its built-in support for horizontal scalability through technologies like distributed Erlang, making it easier to scale to handle larger workloads compared to Symfony's standard practices for scaling web applications.

In Summary, the key differences between Phoenix Framework and Symfony lie in their architectural approach, programming languages used, performance capabilities, learning curves, community support, and scalability options.

Advice on Phoenix Framework and Symfony
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 · 191.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 Phoenix Framework and Symfony

#rust #elixir So am creating a messenger with voice call capabilities app which the user signs up using phone number and so at first i wanted to use Actix so i learned Rust so i thought to myself because well its first i felt its a bit immature to use actix web even though some companies are using Rust but we cant really say the full potential of Rust in a full scale app for example in Discord both Elixir and Rust are used meaning there is equal need for them but for Elixir so many companies use it from Whatsapp, Wechat, etc and this means something for Rust is not ready to go full scale we cant assume all this possibilities when it come Rust. So i decided to go the Erlang way after alot of Thinking so Do you think i made the right decision?Am 19 year programmer so i assume am not experienced as you so your answer or comment would really valuable to me

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Phoenix Framework
Pros of Symfony
  • 120
    High performance
  • 76
    Super fast
  • 70
    Rapid development
  • 62
    Open source
  • 60
    Erlang VM
  • 46
    Well designed
  • 45
    Channels
  • 39
    Easily Scalable
  • 35
    Very extensible
  • 35
    Restful
  • 11
    Functional Programming
  • 10
    Inspired by Rails
  • 10
    Great community
  • 8
    Beautiful code
  • 8
    Ecto
  • 6
    Scalable
  • 6
    Fault tolerant
  • 5
    LiveView feature
  • 4
    Elegant
  • 4
    Insanely fast and easy
  • 4
    Feels like working with rails framework with more power
  • 3
    Built-in websocket support
  • 3
    Benevolent dictator that decides project course
  • 3
    Great integration with GraphQL
  • 2
  • 2
    Front-End Agnostic
  • 1
    Functional approach
  • 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
  • 15
    LTS releases
  • 10
    Easy to Learn
  • 9
    Decoupled framework components
  • 9
    Robust
  • 8
    Service container
  • 8
    Bundle
  • 8
    Good practices guideline
  • 7
    Simple
  • 7
    Powerful
  • 6
    Flexible

Sign up to add or upvote prosMake informed product decisions

Cons of Phoenix Framework
Cons of Symfony
  • 6
    No jobs
  • 5
    Very difficult
  • 9
    Too many dependency
  • 7
    Lot of config files
  • 4
    YMAL
  • 2
    Feature creep
  • 1
    Bloated

Sign up to add or upvote consMake informed product decisions

What is Phoenix Framework?

Phoenix is a framework for building HTML5 apps, API backends and distributed systems. Written in Elixir, you get beautiful syntax, productive tooling and a fast runtime.

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 Phoenix Framework?
What companies use Symfony?
See which teams inside your own company are using Phoenix Framework or Symfony.
Sign up for StackShare EnterpriseLearn More

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

What tools integrate with Phoenix Framework?
What tools integrate with Symfony?

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

What are some alternatives to Phoenix Framework and Symfony?
Vapor
Vapor is the first true web framework for Swift. It provides a beautifully expressive foundation for your app without tying you to any single server implementation.
Django
Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.
WordPress
The core software is built by hundreds of community volunteers, and when you’re ready for more there are thousands of plugins and themes available to transform your site into almost anything you can imagine. Over 60 million people have chosen WordPress to power the place on the web they call “home” — we’d love you to join the family.
Laravel
It is a web application framework with expressive, elegant syntax. It attempts to take the pain out of development by easing common tasks used in the majority of web projects, such as authentication, routing, sessions, and caching.
Rails
Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Controller (MVC) pattern.
See all alternatives