Django VS Ruby on Rails

Compare Django vs Ruby on Rails and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
Django Ruby on Rails
483 465
76,214 54,730
1.3% 0.8%
9.9 10.0
7 days ago 7 days ago
Python Ruby
BSD 3-clause "New" or "Revised" License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Django

Posts with mentions or reviews of Django. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-14.
  • An Introduction to Testing with Django for Python
    2 projects | dev.to | 14 Feb 2024
    You should not test Django's own code — it's already been tested. For example, you don't need to write a test that checks if an object is retrieved with get_object_or_404 — Django's testing suite already has that covered.
  • Django Hello, World
    2 projects | dev.to | 9 Feb 2024
    Django is a high-level Python web framework that prioritizes rapid development with clear, reusable code. Its batteries-included approach supplies most of what you need for complex database-driven websites without turning to external libraries and dealing with security and maintenance risks. In this tutorial, we will build a traditional "Hello, World" application while introducing you to the core concepts behind Django.
  • No changes detected with MAKEMIGRATION command after moving to new DataBase
    2 projects | /r/django | 9 Dec 2023
    Django's auth and session migration files are included with Django at https://github.com/django/django/tree/b287af5dc954628d4b336aefc5027b2edceee64b/django/contrib/auth/migrations and https://github.com/django/django/tree/b287af5dc954628d4b336aefc5027b2edceee64b/django/contrib/sessions/migrations
  • The DevRel Digest November 2023: DevRel You Should Know Part One and Why I Will Never, Ever Leave Developer Relations
    2 projects | dev.to | 1 Dec 2023
    Dawn Wages’ name came up a few times in my call for nominations, and it’s easy to see why! Dawn is a Python Community Advocate at Microsoft. She is active in the Django community with an emphasis on people of color and queer people in tech. Dawn’s impressive resume includes OSS maintainer, member of the Wagtail Core Team, DjangoCon '21, '22, '23 Sponsorship Chair, volunteer for Django Girls, and DjangoCon Africa 2021 Sponsorship Chair.
  • Implementing Role-Based Access Control in Django
    2 projects | dev.to | 1 Nov 2023
    There are many models of access control, however, in this guide, we are going to focus on Role Based Access Control (RBAC) and how to implement it in Django.
  • Online Django Development Sprint, October 19-20.
    6 projects | /r/django | 19 Oct 2023
  • An Introduction to ⚡FastAPI
    5 projects | dev.to | 17 Oct 2023
    Several frameworks for developing web APIs have been developed, such as Django and Flask, but the underlying speed problem has always been present. As a result, another Python framework, FastAPI, has been developed to combat this issue.
  • Beginning Python: Project Management With PDM
    4 projects | dev.to | 12 Oct 2023
    A majority of software in the modern world is built upon various third party packages. These packages help offload work that would otherwise be rather tedious. This includes interacting with cloud APIs, developing scientific applications, or even creating web applications. As you gain experience in python you'll be using more and more of these packages developed by others to power your own code. In this example I've decided to expand our math functionality with NumPy. pdm add is what's used to add dependencies like this to our project:
  • Strong typing, a hill I'm willing to die on
    9 projects | news.ycombinator.com | 4 Oct 2023
  • 10 Github repositories to achieve Python mastery
    8 projects | dev.to | 29 Sep 2023
    Explore here.

Ruby on Rails

Posts with mentions or reviews of Ruby on Rails. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-11.
  • 16 Best Ruby Frameworks For Web Development [2024]
    6 projects | dev.to | 11 Mar 2024
    Ruby on Rails is regarded as one of the best ruby frameworks. It was the primary language in developing big projects such as Twitter and helped the language boost the community. Often referred to as “Rails,” Ruby on Rails is a web development framework with an MVC control structure and currently running its 6.1 version. The 16-year-old language has dramatically influenced the web development structures and managing databases, web pages, and other components on a web application.
  • Ruby on Rails load testing habits
    5 projects | news.ycombinator.com | 25 Jan 2024
    Rails isn't super opinionated about database writes, its mostly left up to developers to discover that for relational DBs you do not want to be doing a bunch of small writes all at once.

    That said it specifically has tools to address this that started appearing a few years ago https://github.com/rails/rails/pull/35077

    The way my team handles it is to stick Kafka in between whats generating the records (for us, a bunch of web scraping workers) and and a consumer that pulls off the Kafka queue and runs an insert when its internal buffer reaches around 50k rows.

    Rails is also looking to add some more direct background type work with https://github.com/basecamp/solid_queue but this is still very new - most larger Rails shops are going to be running a second system and a gem called Sidekiq that pulls jobs out of Redis.

  • First commits in a Ruby on Rails app
    6 projects | dev.to | 17 Jan 2024
    Here is what strict_loading does (source):
  • Continuous Deployment with GitHub Actions and Kamal
    4 projects | dev.to | 7 Jan 2024
    Kamal is a wonderfully simple way to deploy your applications anywhere. It will also be included by default in Rails 8. Kamal is trivial, but I don’t recommend using it on your development machine.
  • Jets: The Ruby Serverless Framework
    5 projects | news.ycombinator.com | 7 Dec 2023
    I think that you're conflating correlation with causation. I think it's more plausible to assume it was the early numbers that are skewed and non-representative.

    The fact that GitHub itself was is a killer app of the Ruby on Rails, and that the Rails project itself changed to being hosted on GitHub somewhat very early on it's history [1] had a disproportionate effect on the early community that gathered there.

    Now GitHub attracts a much more diverse portfolio of projects, so the numbers you see there are less statistically biased towards early Ruby on Rails adopters.

    [1] Commit history on the main branch of rails/rails via github goes as far as Apr 10, 2008 https://github.com/rails/rails/commit/c67e985994362290308073...

  • understanding Rails version maintenance policy?
    4 projects | /r/rails | 7 Dec 2023
    Done! https://github.com/rails/rails/pull/50295
    4 projects | /r/rails | 7 Dec 2023
    releaseCycle: "6.1" releaseDate: 2020-12-09 eol: 2024-06-01 # https://github.com/rails/rails/pull/46895#issuecomment-1673353127 latest: "6.1.7.6" latestReleaseDate: 2023-08-22
    4 projects | /r/rails | 7 Dec 2023
    You might have luck. It does look like docs changes are being accepted into 7.1-stable branch: https://github.com/rails/rails/commits/7-1-stable/
  • Rage: Fast web framework compatible with Rails
    12 projects | news.ycombinator.com | 4 Dec 2023
    Also this doesn't show how database access is handled which is the hard part. If you are not touching the database, you can run Rails on falcon and get fiber based concurrency.

    If you run falcon on rails and access database, then you have to explicitly checkin/checkout a connection to be safe. Details here - https://github.com/rails/rails/issues/42271.

  • HTML Data Attributes: One of the Original State Management Libraries
    5 projects | dev.to | 29 Nov 2023
    DEV is a Rails monolith, which uses Preact in the front-end using islands architecture. The reason why I mention all this is that it's not a full-stack JavaScript application, and there is no state management library like Redux or Zustand in use. The data store, for the most part on the front end, is all data attributes.

What are some alternatives?

When comparing Django and Ruby on Rails you can also consider the following projects:

Nest - A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript 🚀

fastapi - FastAPI framework, high performance, easy to learn, fast to code, ready for production

Flask - The Python micro framework for building web applications.

Masonite - The Modern And Developer Centric Python Web Framework. Be sure to read the documentation and join the Discord channel for questions: https://discord.gg/TwKeFahmPZ

Roda - Routing Tree Web Toolkit

Hanami - The web, with simplicity.

AIOHTTP - Asynchronous HTTP client/server framework for asyncio and Python

Nuxt.js - Nuxt is an intuitive and extendable way to create type-safe, performant and production-grade full-stack web apps and websites with Vue 3. [Moved to: https://github.com/nuxt/nuxt]

Tornado - Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.

CherryPy - CherryPy is a pythonic, object-oriented HTTP framework. https://cherrypy.dev

Phoenix - Peace of mind from prototype to production

django-rest-framework - Web APIs for Django. 🎸