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

Nette

41
37
+ 1
1
Symfony

8.2K
6.1K
+ 1
1.1K
Add tool

Nette vs Symfony: What are the differences?

Introduction

Nette and Symfony are two popular PHP frameworks. While they share some similarities, there are key differences between them that distinguish their features and usage.

  1. Project Size and Complexity: Nette is known for being lightweight and suitable for small to medium-sized projects. It focuses on simplicity and ease of use, making it a good choice for beginners or projects with limited requirements. On the other hand, Symfony is a more robust framework suitable for large-scale, enterprise-level projects. It provides a wide range of components and functionalities, including advanced features like cache management, form handling, and authentication.

  2. Flexibility and Modularity: Nette follows a modular, standalone approach, where you can choose which components to include in your project, offering high flexibility and modularity. This allows developers to keep the projects lightweight and tailor them to their specific needs. In contrast, Symfony follows a bundle-based architecture, where functionalities are grouped into reusable bundles. While this provides a more integrated and structured development experience, it may require including more components than needed, potentially increasing the project size.

  3. Documentation and Community Support: Symfony has a larger and more established community, resulting in a vast amount of high-quality documentation, tutorials, and third-party libraries available. It also has well-defined coding standards and a reliable support system. In comparison, the Nette community is smaller, and although the framework has good documentation, it may require more searches for specific topics or rely on community help.

  4. Learning Curve and Ease of Use: Nette is often praised for its simplicity and intuitive design, making it easier for beginners to grasp and start building projects quickly. It has a shallow learning curve and avoids unnecessary complexity. Symfony, on the other hand, is more complex due to its extensive feature set and the learning curve can be steeper, making it better suited for experienced developers.

  5. Performance: Nette is designed to be lightweight and efficient, resulting in better performance for smaller scale projects. It has a minimalistic approach and avoids unnecessary overhead. Symfony, on the other hand, provides more advanced features and tools, which can lead to increased memory usage and slightly slower performance, especially in comparison to Nette for smaller projects.

  6. Maturity and Long-term Support: Symfony has been around for a longer time and is considered a mature, stable framework with a strong long-term support commitment. It follows a strict release cycle and tackles security vulnerabilities promptly. Nette is also stable but may not have the same level of long-term support and industry recognition as Symfony.

In summary, Nette and Symfony differ in terms of project size and complexity, flexibility and modularity, documentation and community support, learning curve and ease of use, performance, as well as maturity and long-term support commitment. Selecting the appropriate framework depends on the project requirements, scalability, and the development team's experience level.

Advice on Nette 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 · 209.2K 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
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of Nette
Pros of Symfony
  • 1
    Small size
  • 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 Nette
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

    What is Nette?

    Lets you focus on the creative part of being a developer. It's built to be extremely usable, friendly and a joy to use. Its comprehensible yet efficient syntax, a cutting edge debugger and industry-leading security features let you write e-commerce sites, wikis, blogs, CMS or anything you can imagine faster and better than ever.

    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 Nette?
    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 Nette?
    What tools integrate with Symfony?

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

    What are some alternatives to Nette and Symfony?
    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.
    CodeIgniter
    CodeIgniter is a proven, agile & open PHP web application framework with a small footprint. It is powering the next generation of web apps.
    CakePHP
    It makes building web applications simpler, faster, while requiring less code. A modern PHP 7 framework offering a flexible database access layer and a powerful scaffolding system.
    Nette Framework
    It is a set of decoupled and reusable PHP components that will make your work easier. You can use any of these components independently from the rest of framework. It lets you work more effectively, focus on what's important and makes your code more readable and well-structured in the process.
    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.
    See all alternatives