Software Alternatives, Accelerators & Startups

Turbolinks VS Webpacker

Compare Turbolinks VS Webpacker and see what are their differences

Turbolinks logo Turbolinks

Turbolinks makes navigating your web application faster

Webpacker logo Webpacker

Use Webpack to manage app-like JavaScript modules in Rails - rails/webpacker
  • Turbolinks Landing page
    Landing page //
    2023-08-17
  • Webpacker Landing page
    Landing page //
    2023-07-27

Turbolinks features and specs

  • Fast Page Loads
    Turbolinks makes use of AJAX to load only the content that changes between pages, leading to faster page transitions compared to full page reloads.
  • Ease of Use
    It can be easily integrated into a Rails application with minimal setup and code changes, providing fast results without a steep learning curve.
  • Reduced Server Load
    By minimizing full-page reloads, Turbolinks can help reduce server load and usage, as well as client bandwidth.
  • Improved User Experience
    By providing faster navigation and transitions, Turbolinks can create a smoother and more efficient user experience similar to that of a single-page application.

Possible disadvantages of Turbolinks

  • JavaScript Compatibility Issues
    Turbolinks can cause issues with existing JavaScript code that relies on traditional DOMContentLoaded events, requiring additional configuration or workarounds.
  • SEO Challenges
    Since Turbolinks primarily changes content dynamically, it can pose challenges for search engine optimization unless properly handled.
  • Limited Use Cases
    Turbolinks is best suited for pages where content changes without heavy interactivity, and may not be ideal for highly interactive applications.
  • Backward Compatibility
    Integrating Turbolinks into an existing application might require significant changes to JavaScript code to ensure compatibility.

Webpacker features and specs

  • Modern JavaScript Features
    Webpacker allows Rails applications to utilize modern JavaScript features and tools, such as ES6 syntax, JSX, and TypeScript, thereby enhancing the developer experience and code quality.
  • Asset Bundling
    It efficiently bundles multiple JavaScript files into a single package, reducing load times and improving performance by minimizing the number of HTTP requests.
  • Integration with Rails
    As an official Rails library, Webpacker integrates seamlessly with the Rails framework, ensuring that front-end builds are consistent and easier to manage alongside Ruby on Rails projects.
  • Configurable
    Provides a highly configurable environment, allowing developers to customize their JavaScript and asset builds extensively to meet specific project needs.
  • Community Support
    Being part of the Rails ecosystem, Webpacker benefits from an extensive community support, with a wealth of third-party resources, documentation, and plugins available.

Possible disadvantages of Webpacker

  • Complexity
    Webpacker can introduce additional complexity, especially for developers not familiar with JavaScript tooling or the webpack configuration, which can lead to a steeper learning curve.
  • Performance Overhead
    The abstraction and tooling required by Webpacker can add performance overhead during development with slower compilation and building times compared to simpler asset management solutions.
  • Dependency Management
    Managing dependencies can become burdensome as Webpacker requires handling both the Ruby Gems and the JavaScript packages through yarn or npm, increasing maintenance efforts.
  • Migration Path
    As newer tools and techniques emerge, moving away from Webpacker could require significant refactoring efforts, especially for applications with extensive custom configurations.
  • Deprecated Status
    Webpacker is no longer the recommended default for new Rails applications starting from Rails 7, which now prefers using esbuild or importmaps, potentially affecting its long-term viability.

Turbolinks videos

Improving Your Page Load Speeds on Any Site with Turbolinks

More videos:

  • Review - 16 Laravel Livewire SPA using Turbolinks
  • Review - True hybrid mobile applications with Turbolinks

Webpacker videos

RailsConf 2020 CE - Webpacker, It-Just-Works, But How? by Justin Gordon

More videos:

  • Review - Should you use React with Webpacker in your Rails project? Rails MVC vs Single Page App (SPA)!

Category Popularity

0-100% (relative to Turbolinks and Webpacker)
Software Development
55 55%
45% 45
Web Application Bundler
33 33%
67% 67
JS Build Tools
0 0%
100% 100
Code Collaboration
100 100%
0% 0

User comments

Share your experience with using Turbolinks and Webpacker. For example, how are they different and which one is better?
Log in or Post with

Social recommendations and mentions

Webpacker might be a bit more popular than Turbolinks. We know about 17 links to it since March 2021 and only 14 links to Turbolinks. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.

Turbolinks mentions (14)

  • Hotwire: HTML Over The Wire
    First off, name calling. Second, I actually thought the same as you but digging into the history I don't see any records of a public release of Hotwire until December of 2020, and HTMX was public in May of that year. I'm pretty sure what I was thinking of was actually Turbolinks: https://github.com/turbolinks/turbolinks. - Source: Hacker News / over 1 year ago
  • What is the best way to add dynamic workflow in django template ?
    You can find out more about Turbolinks on the GitHub repository (https://github.com/turbolinks/turbolinks). The repo is now archived, because itโ€™s was integrated in a framework called Turbo, but the functionality is the same. Source: over 2 years ago
  • A Comprehensive Guide to Rails Internationalization
    // app/javascript/src/helpers/price.js // Turbolinks are enabled by default in Rails, // we need to process our script on every page load // https://github.com/turbolinks/turbolinks#full-list-of-events Document.addEventListener("turbolinks:ready", () => { // Get language from html tag const lang = document.documentElement.lang; // Find all span tags with data-localize="price" const pricesOnPage =... - Source: dev.to / almost 3 years ago
  • An SPA Alternative
    Https://github.com/turbolinks/turbolinks It provides a smooth UX by fetching next page's HTML in background, then replace the DOM by compareing the diff in HTML. So you won't see a blank page while navigating between pages. - Source: Hacker News / about 3 years ago
  • Get Started with Hotwire in Your Ruby on Rails App
    If you have used Turbolinks in the past, you will feel right at home with Turbo Drive. At its core, some JS code intercepts JavaScript events on your application, loads HTML asynchronously, and replaces parts of your HTML markup. - Source: dev.to / about 3 years ago
View more

Webpacker mentions (17)

  • React + Ruby on Rails without any gems
    We will use Webpacker or JavaScript compiler and assets management. By following the webpacker installation guide, letโ€™s add Webpacker and React to our application. - Source: dev.to / over 1 year ago
  • Collecting JavaScript code coverage with Capybara in Ruby on Rails application
    For example, there is a Ruby on Rails application that uses Webpacker and has JavaScript files that are covered by the system tests. Capybara is used as the system testing tool. - Source: dev.to / over 1 year ago
  • Asset Pipeline JS Migration
    Using Webpacker in Rails provides several advantages over the traditional asset pipeline. First, Webpacker uses JavaScript modules, which allows for better code organization and improved code reusability. Second, it offers modern frontend build tools, such as Babel and PostCSS, for transforming and compiling assets. Third, it provides faster build times and faster runtime performance through code splitting and... - Source: dev.to / over 2 years ago
  • Thank you Webpacker, Goodbye Webpacker
    This article is replace Webpacker with Simpacker and webpack. - Source: dev.to / almost 3 years ago
  • How to setup ruby on rails + Angular
    In ruby โ€‹โ€‹on rails 7 what is the best way to properly install Angular because I can't find any documentation about it. The only tutorial that exists uses webpacker (https://github.com/rails/webpacker) but unfortunately it is no longer supported and no longer up to date in terms of security. Source: about 3 years ago
View more

What are some alternatives?

When comparing Turbolinks and Webpacker, you can also consider the following products

RubyGems - RubyGems. org is the Ruby community's gem hosting service. Instantly publish your gems and then install them. Use the API find out more about available gems. Become a contributor and improve the site yourself.

Webpack - Webpack is a module bundler. Its main purpose is to bundle JavaScript files for usage in a browser, yet it is also capable of transforming, bundling, or packaging just about any resource or asset.

GitHub - Originally founded as a project to simplify sharing code, GitHub has grown into an application used by over a million people to store over two million code repositories, making GitHub the largest code host in the world.

Yarn - Yarn is a package manager for your code.

JUST - Service to find a job in sports and eSports.

Pingy CLI - Making Modern Websites Should Be Easier. Pingy is Here To Help.