swup VS Next.js

Compare swup vs Next.js and see what are their differences.

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
swup Next.js
16 2018
4,398 119,373
1.5% 1.9%
9.7 10.0
5 days ago 7 days ago
TypeScript JavaScript
MIT 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.

swup

Posts with mentions or reviews of swup. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-29.
  • Coming to grips with JS: a Rubyist's deep dive
    16 projects | dev.to | 29 Dec 2023
    Sure, you can use any number of JS-avoidance libraries. I'm a fan of Turbo, and there's also htmx, Unpoly, Alpine, hyperscript, swup, barba.js, and probably others.
  • Show HN: We built swup+fragment-plugin to visually enhance classic websites
    4 projects | news.ycombinator.com | 2 Aug 2023
    2. The newly released fragment-plugin [3] that provides a declarative API for dynamically replacing containers based on rules

    I can now finally build websites that tick all three boxes:

    1. Visually impressive, fun, and snappy by using swup's first-class support for animations[4], cache[5], and preload capacities[6], enhanced with fragment visits as seen on the demo site.

    2. Accessible by being able to serve server-rendered semantic markup that will fully work even with JavaScript disabled (try it out on the demo site!). On top of that, swup's a11y plugin[7] will automatically announce page visits to assistive technologies and will focus the new `

    ` element after each visit.

    3. Because now all I need for my fancy frontend is a bit of progressive JavaScript, I can choose whatever tool I like on the server, keeping complexity low and maintainability high. I can use SSGs like eleventy or Astro (the demo site is built using Astro!), I can use any CMS like WordPress or ProcessWire, or a framework like Laravel. And I don't have to maintain an additional node server for SSG!

    And all it took was 20 years! ;)

    [0] https://github.com/swup/swup

  • Animated transitions between sections
    2 projects | /r/webdev | 26 Jun 2023
  • How to use View Transitions in Hotwire Turbo
    10 projects | dev.to | 16 Feb 2023
    So what are View Transitions good for? In short, they allow adding animated page transitions. Although we already have several standard options to animate stuff on web pages (CSS Transitions, CSS Animations or the Web Animations API) and countless more options in particular JavaScript frameworks and libraries (Framer Motion for React, Vue Transitions, Svelte Transitions, Swup, Barba.js or Animate.css to name just a few), the web still lacks a generic, standards-based and easy-to-use solution to animate transitions between pages or during DOM updates. At least that’s what Google engineers say and I tend to agree with them.
  • Smooth Page Transitions in 2023
    4 projects | /r/webdev | 31 Jan 2023
    Is https://turbo.hotwired.dev/ my replacement? Or Swup.js?
  • Alpine.js
    17 projects | news.ycombinator.com | 13 Jan 2023
  • Is there any js library to add fluid "app-like" animations to a website?
    2 projects | /r/webdev | 28 Dec 2022
    I've used https://swup.js.org/. Simple to setup with one of the built in/contributed themes, haven't tried building a custom theme however. Also has a lot of good plugins for eg. accessibility. I used it in combination with Astro so a static site with a separate html file for each page.
  • Migrating my website from Gatsby to Astro
    13 projects | dev.to | 25 Nov 2022
    Like Gatsby or Next, Astro does not have any client side navigation. So each link click triggers a full page reload. Astro recommends to use Swup as mentioned here. Turbo is also another option though the team does not recommend it. I'm currently using Swup which I'll probably switch from or completely remove it as I have added TOC to MDX and clicking on a title is not redirecting the page to that particular section.
  • Which library for page transitions would you advise?
    2 projects | /r/webdev | 22 Nov 2022
    I've come across swup , HighwayJS and barba js
  • Htmx, WebAssembly, Rust, ServiceWorker Proof of Concept
    12 projects | news.ycombinator.com | 16 Oct 2022

Next.js

Posts with mentions or reviews of Next.js. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-26.

What are some alternatives?

When comparing swup and Next.js you can also consider the following projects:

vite - Next generation frontend tooling. It's fast!

Express - Fast, unopinionated, minimalist web framework for node.

SvelteKit - web development, streamlined

MERN - ⛔️ DEPRECATED - Boilerplate for getting started with MERN stack

Angular - Deliver web apps with confidence 🚀

fastify - Fast and low overhead web framework, for Node.js

Svelte - Cybernetically enhanced web apps

Koa - Expressive middleware for node.js using ES2017 async functions

AdonisJs Framework - AdonisJS is a TypeScript-first web framework for building web apps and API servers. It comes with support for testing, modern tooling, an ecosystem of official packages, and more.

craco - Create React App Configuration Override, an easy and comprehensible configuration layer for Create React App.

razzle - ✨ Create server-rendered universal JavaScript applications with no configuration

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]