Shift with red gradient lettering

Upgrade Tailwind 2.x to Tailwind 3.x

The Tailwind 3.x Shift automates the upgrade of your project from Tailwind 2.x to Tailwind 3.x. This includes all of the changes listed in the release notes.

This includes upgrading your Tailwind configuration file, replacing utility class references, adopting the new color palette, and much more.

Using the Tailwind 3.x Shift to automatically upgrade your project has an estimated time savings of 2 hours.

Tailwind 3.x is still in alpha. As such, the Tailwind 3.x Shift is still being finalized. If you'd like to use this Shift to try Tailwind 3, you may request a free rerun once Tailwind 3 is officially released.

Screenshot of a pull request with atomic commits for each change of the Tailwind 3.x Shift

Requirements

Core Upgrades

The Tailwind 3.x Shift automates many of the upgrades listed in the Tailwind Upgrade Guide, including:

  • Bumping package.json for Tailwind 3.x.
  • Updating the tailwindcss/typography and tailwindcss/forms plugins.
  • Removing instances of old Tailwind utility classes.
  • Converting old Tailwind utility classes.
  • Changing Tailwind configuration option key names.
  • Converting screens to new variants.

Additional Upgrades

In addition to the Core Upgrades, the Tailwind 3.x Shift automates the optional upgrades listed in the Tailwind Upgrade Guide, including:

  • Enabling the new Tailwind Just-in-Time (JIT) mode.
  • Adopting the new Tailwind 3.x color palette (configurable).
  • Optimizing your Tailwind config file.

Manual Upgrades

There are some upgrades the Tailwind 3.x Shift can not perform automatically. When Shift detects these it adds a detailed comment on the Pull Request to help guide any additional upgrade steps.

In addition, if you are using Tailwind UI within your project, you may also run the Tailwind UI Shift to complete the upgrade to Tailwind 3.x.

Custom Configuration

By default, Shift will look for the Tailwind config file to determine your project path. This will be used as the base path when searching for additional assets and templates.

When not specified, Shift will assume a Laravel project structure. If you are not using a Tailwind configuration file or have a different project structure, you may configure Shift for your project.

Sign in with any of the following services to connect Shift with your Laravel project.


Don't use one of these services?

Temporarily push your project to a free, private repository on one of these cloud-based services or upgrade your project locally with Shift for Docker.