htmx VS Turbolinks

Compare htmx vs Turbolinks and see what are their differences.

htmx

</> htmx - high power tools for HTML (by bigskysoftware)

Turbolinks

Turbolinks makes navigating your web application faster (by turbolinks)
Our great sponsors
  • Syncfusion - See why our products are consistently getting 4.6 out of 5 stars by your peers.
  • Nanos - Run Linux Software Faster and Safer than Linux with Unikernels
  • Scout APM - A developer's best friend. Try free for 14-days
htmx Turbolinks
123 17
4,725 12,722
7.8% -
9.4 0.9
about 23 hours ago 3 months ago
JavaScript TypeScript
BSD 2-clause "Simplified" 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.

htmx

Posts with mentions or reviews of htmx. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-10-16.
  • My goodness this is so cool
    reddit.com/r/Supabase | 2021-10-27
  • Ask HN: Front end web app development tools for back end engineer
    news.ycombinator.com | 2021-10-27
  • Learning Javascript after Python
    Have a look: "> htmx - high power tools for html" https://htmx.org
  • The JavaScript ecosystem is a hot mess and so is software development in general
    news.ycombinator.com | 2021-10-16
    I work on a dependency-free, build-less library called htmx:

    https://htmx.org

    It's more an extension of HTML than a JS library. It might be a good way to gently introduce more dynamic behavior without blowing out the complexity of your site.

  • Should I ditch using Django
    reddit.com/r/startups | 2021-10-16
    As an additional advice, I would check the Django subreddit and ask what are they doing for their front-end needs (e.g. check this one) -> you don't have to use JS for front-end (e.g. check htmx, unicorn, etc).
  • The Decline of Django
    news.ycombinator.com | 2021-10-15
    I think the case for server-side HTML rendering has never been stronger, and of all Django projects I work on, the ones I enjoy most are those that never got on the SPA bandwagon. From both a developer and user point of view I find them much faster and less painful. There are many cases where you really, really don't need the massive amount of extra complexity involved in designing APIs, adding JS frameworks etc.

    When you need a bit of extra UI goodness, [htmx](https://htmx.org/) is a fantastic solution, and you can still use SPA-type approaches for things that need them.

    You can also benefit from massively faster (and more reliable) functional testing when you are mostly standard HTML - see [django-functest](https://github.com/django-functest/django-functest/) for an example of this.

  • Has anyone written a small framework to support HTMX?
    reddit.com/r/golang | 2021-10-14
    See: https://htmx.org/
  • How Laravel Livewire works (a deep dive)
    news.ycombinator.com | 2021-10-12
    I recently started using htmx (https://htmx.org/) in combination with Django and have become a firm believer of sending HTML 'over the wire' instead of JSON structures that then get used client side.
  • I built a modern website in 2021
    news.ycombinator.com | 2021-10-10
    Curious - why aren’t simpler frameworks like htmx (https://htmx.org/) more common or
  • Ask HN: Why aren’t frameworks like htmx more popular?
    news.ycombinator.com | 2021-10-10
    shifting to htmx [1] or related “simpler” libraries?

    [1] https://htmx.org/

Turbolinks

Posts with mentions or reviews of Turbolinks. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-09-05.
  • Getting "Correct" URL when inputting incorrect data
    reddit.com/r/rails | 2021-10-22
  • Doing the Impossible — Building a Persistent Audio Player in Ruby on Rails
    dev.to | 2021-09-05
    We’ll use Ruby on Rails and Turbo to accomplish this, but we could use Turbo’s predecessor, Turbolinks to achieve the same result, and Rails is only incidental to the finished project. We could just as easily use Turbo with any other "multi-page" framework and deliver the same experience.
  • I've learned a little bit of python. Now what?
    reddit.com/r/Python | 2021-08-15
    Check out StimulusJs and Turbolinks their whole purpose is to add only a tiny bit of js to a server side rendered website, to give a feel similar to that of client-side rendered web pages.
  • Rack mini profiler error in heroku even when gem is removed in gemfile
    reddit.com/r/rails | 2021-07-31
    # frozen_string_literal: true source 'https://rubygems.org' git_source(:github) { |repo| "https://github.com/#{repo}.git" } ruby '3.0.1' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails', branch: 'main' gem 'rails', '~> 6.1.4' # Use postgresql as the database for Active Record gem 'pg', '~> 1.1' # Use Puma as the app server gem 'puma', '~> 5.0' # Use SCSS for stylesheets gem 'sass-rails', '>= 6' # Transpile app-like JavaScript. Read more: https://github.com/rails/webpacker gem 'webpacker', '~> 5.0' # Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks gem 'turbolinks', '~> 5' # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder gem 'jbuilder', '~> 2.7' # Use Redis adapter to run Action Cable in production # gem 'redis', '~> 4.0' # Use Active Model has_secure_password # gem 'bcrypt', '~> 3.1.7' # Use Active Storage variant # gem 'image_processing', '~> 1.2' # Reduces boot times through caching; required in config/boot.rb gem 'bootsnap', '>= 1.4.4', require: false gem 'devise' group :development, :test do # Call 'byebug' anywhere in the code to stop execution and get a debugger console gem 'byebug', platforms: %i[mri mingw x64_mingw] end group :development do # Access an interactive console on exception pages or by calling 'console' anywhere in the code. gem 'web-console', '>= 4.1.0' # Display performance information such as SQL time and flame graphs for each request in your browser. gem 'listen', '~> 3.3' # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring gem 'spring' end group :test do # Adds support for Capybara system testing and selenium driver gem 'capybara', '>= 3.26' gem 'selenium-webdriver' # Easy installation and use of web drivers to run system tests with browsers gem 'webdrivers' end # Windows does not include zoneinfo files, so bundle the tzinfo-data gem gem 'tzinfo-data', platforms: %i[mingw mswin x64_mingw jruby]
  • Tink Is Joining Visa
    news.ycombinator.com | 2021-06-24
  • Can I "un-declare" javascript code after removing it from the DOM?
    reddit.com/r/webdev | 2021-06-03
    Nice job solving this problem! This sounds similar to how Inertia works (https://inertiajs.com/how-it-works), or Turbolinks (https://github.com/turbolinks/turbolinks). You could dig through those libraries to see if / how they solved issues with global scope.
  • Using Hotwire Turbo in Rails with legacy JavaScript
    dev.to | 2021-04-23
    since Rails 4, the Turbolinks library has been included but had a bunch of problems at that time (2013), so
  • Working on getting a class project up and going into Heroku, keep running into this, any ideas on what’s going on and what to do?
    reddit.com/r/Heroku | 2021-04-22
    # Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
  • htmx and HTML Driven Development
    dev.to | 2021-04-10
    This functionality is somewhat similar to Turbolinks and allows you to use htmx for progressive enhancement.
  • Rails repeats Webpacker packages if I go back one page (OwlCarousel, DataTables)
    reddit.com/r/rails | 2021-04-06
    https://github.com/turbolinks/turbolinks#full-list-of-events

What are some alternatives?

When comparing htmx and Turbolinks you can also consider the following projects:

Alpine.js - A rugged, minimal framework for composing JavaScript behavior in your markup.

InstantClick - InstantClick makes following links in your website instant.

react-snap - 👻 Zero-configuration framework-agnostic static prerendering for SPAs

django-unicorn - The magical reactive component framework for Django ✨

turbo - The speed of a single-page web application without having to write any JavaScript

lighthouse - Automated auditing, performance metrics, and best practices for the web.

Slide and swipe - :zap: A sliding swipe menu that works with touchSwipe library.

Slideout - A touch slideout navigation menu for your mobile web apps.

phoenix_live_view - Rich, real-time user experiences with server-rendered HTML

svelte-query - Performant and powerful remote data synchronization for Svelte

CacheP2P - "More users = More capacity"