DEV Community

Cover image for Best Back-end Web Development Frameworks
Arpit
Arpit

Posted on

Best Back-end Web Development Frameworks

Choosing the best backend web development framework is a little bit harder for beginners. With the so many availabilities of web frameworks, it’s confusing to choose the best web framework according to your skills.

Here are best web development frameworks. Sequence doesn't matter, every frameworks are best.

1. Django

Django is one of the most popular web frameworks written in python. Django framework follows Model View Template (MVT) pattern. If you already know python programming or your background is python then this is the best web framework.

This back-end framework is optimal, reduced coding, pluggability, greater reusability, and faster development.

Django Rest Framework is also best and easier to make REST API

Personally, I used this framework.

Tutorials:

Todo app in Django
Blog app in Django

2. Laravel

Written in PHP

Laravel is a PHP framework that follows Model View Controller (MVC) architecture. People who love PHP can easily learn Laravel.

It offers a modular packaging system equipped with a dedicated dependency manager. Laravel is rated as one of the best web frameworks.

3. Flask

Written in Python

Flask is a Python-based micro web framework. It is micro in the sense that Flask aims to keep the core simple but extensible. Developers that have a grasp of Python can easily adapt to working with Flask. As a micro-framework, it’s perfect for applications that require heavy customization.

4. Express.js

Written in JavaScript

Express.js, aka Express, is a backend web application framework designed for building web applications and APIs. It provides a thin layer of fundamental web app features. And with a myriad of HTTP utility methods and middleware, creating a robust API is quick and easy.

5. Ruby on Rails

Written in Ruby

Ruby on Rails, also known as Rails, is a server-side framework written in Ruby. It offers default structures for a database, web pages, and web service. Scalability is one of the main reasons for many users to opt for Ruby on Rails.

Read full article: Best Back-end Web Development Frameworks

Discussion (31)

Collapse
thecodealchemist profile image
Nyasha Chiroro

NestJs 😊😊

Collapse
marcussa profile image
Marcus S. Abildskov • Edited

Express is a really garbage HTTP library.
It's slow and outdated.

It seems like you've just taken the most minimal HTTP libraries instead of the "best" HTTP frameworks.

Laravel is the only one of these that'd count as an actual framework rofl.

Instead of Flask for Python, it should've been Django.

Instead of Express for Node, it should've been Nest or Deepkit.

What is the definition of a good framework? Something that is batteries included and opinionated.

This post is a proof of why you shouldn't read articles like these from communities such as Medium or Dev.to

Collapse
Sloan, the sloth mascot
Comment deleted
Collapse
marcussa profile image
Marcus S. Abildskov • Edited

NestJS isn't using Express under the hood lol, that's a false statement.
NestJS is HTTP library agnostic.

Just because Express is stable doesn't mean it isn't outdated.

Collapse
kasvith profile image
Kasun Vithanage

I think what you point out is correct. Often I've find its extremely difficult manage pure Express based projects. NestJS is a clear winner here.

But I disagree on Express being a garbage library. Its very un-opiniated and allows developers to build anything on top of it, I don't see it as a garbage. Its good enough.

Also NestJS uses Express as an http adapter(default one unless you install Fastify Adapter).


Ultimately I agree on using Nest over Express as it is batteries included. Sorry for the previous misunderstanding.

Collapse
chrysanthbuster profile image
RYMND

I agree with your last line. This post is too opinated.

Collapse
ernestobs7 profile image
Ernesto Balanzar

relax, take it easy, express isn't that bad, is probably the most popular framework from node and node isn't that bad.

Collapse
maacpiash profile image
Ahad Chowdhury

I’d like to suggest ASP.NET (Core/6). The framework is

Collapse
peter_brown_cc2f497ac1175 profile image
Peter Brown

More important than understanding the framework, is understanding how the framework works.. In order to use any framework you should understand at least one level of abstraction below where it is running. Frameworks come and go, but understanding the theoretical and practical underpinnings of a framework will help you become more future proof in your skills as you are able to adapt to changes.

Collapse
stojakovic99 profile image
Nikola Stojaković

When it comes to JS frameworks yes, many of them come and go. When it comes to the well established, thoroughly battle tested frameworks like RoR, ASP.NET, Spring and others, they won't go anywhere that easily. You should learn theoretical concepts behind frameworks but you should also have practical understanding of some specific frameworks to be employable.

Collapse
peter_brown_cc2f497ac1175 profile image
Peter Brown

Employers don't hire you based on whether or not you know some framework. Employers will hire you if you're a good engineer. Knowing this framework or that, or at least having it on your resume, will only get you past the HR drones.

Thread Thread
stojakovic99 profile image
Nikola Stojaković • Edited

Umm, actually they do. If I didn't know React nor Node on my current job I wouldn't be hired, no matter how good engineer I am. Every job has a list of requirements and it's not just a tool for HR but most of the time qualifications that company looks for. If you need .NET software developer you won't hire Python software developer just because that developer is a good engineer. We're talking about completely different technologies and ecosystems.

Therefore, my advice for junior engineers is; start learning some framework so you can build practical projects with it and then build up that knowledge by learning theoretical concepts.

Collapse
roys profile image
RoyS

Django 💯%

Collapse
zhomart2002 profile image
Zhomart

Performance has left the group.

Collapse
finebythen profile image
Finn Then

Django in combination with REST: perfect!

Collapse
beyarz profile image
Beyar

I gotta be honest with you, this looks like something you did in 5 minutes or less.

You probably search up a top 10 list and looked up each framework on wikipedia and read the first 5 sentences and wrote it down quickly.

Collapse
beyarz profile image
Beyar

You could've mention that Rails follows a practice called "convention over configuration", I don't know if its known for it but it's definitely something you'll have to wrap your head around when getting started.

And as Laravel, Rails follows the MVC model.

Rails also makes it easier for you to follow principles like DRY (Don't repeat yourself).

Another thing worth mentioning is the "--api" flag which allows you to create a new rails app with api-only features.

Collapse
angelnext profile image
AngelNext

My favourite framework is in fact gofiber, a Go Web Framework with a simple short sintax

Collapse
zachary profile image
zachary

Spring boot + MVC for JAVA

Collapse
roliveira3891 profile image
Renato Oliveira

AdonisJs

Collapse
optimbro profile image
Rahul

Where is Fastify?

Collapse
angelnext profile image
AngelNext

A very good one in my opinion is Rocket, a Rust a very performant framework

Collapse
rahulkrishnakumar profile image
Rahul K

Next.js

marcussa profile image
Marcus S. Abildskov • Edited

"makes use"
Can you even read?
There's a big difference between claiming it explicitly uses Express under the hood and then what is written in the documentation.

Collapse
kasvith profile image
Kasun Vithanage

Phoenix Framework

Collapse
yashiroquy profile image
UMR

Hate ruby on rails

Collapse
breinbaas profile image
Rob van Putten

Flutter and Fast API (Python) for the backend. Development is at least 5 times faster since that choice. No more annoying JavaScript, HTML and Python mix.

Collapse
parth93qa profile image
parthzz • Edited

Java or Scala(Play Framework)

Collapse
singfield profile image
Singfield • Edited

You can change express by fastify or koa