A New Collection of Thoughtful Learning Apps — Now Available on iOS & Android

Image
I’m excited to share a set of mobile apps I’ve recently completed and published on both the Google Play Store and the Apple App Store. These apps are designed with a simple goal in mind: to make meaningful, structured content more accessible, whether you’re studying theology or improving your English vocabulary. 📱 Now Available on Both Platforms All apps are live and available for download: Google Play Developer Page: https://play.google.com/store/apps/dev?id=5835943159853189043 Apple App Store Developer Page: https://apps.apple.com/ca/developer/q-z-l-corp/id1888794100 📖 Theology & Confession Study Apps For those interested in Reformed theology and classical Christian teachings, I’ve developed a series of apps that present foundational texts in a clean, focused reading format: The Belgic Confession Canons of Dort Heidelberg Catechism Westminster Shorter Catechism Each app is designed to provide a distraction-free experience, making it easier to read, reflect, and revisit these im...

Tailwind 4 in Next.js: Why @tailwind base; No Longer Works (and What to Do Instead)

Tailwind 4 in Next.js: Why @tailwind base; No Longer Works (and What to Do Instead)

If you’re like me, when you updated to Tailwind 4 in a Next.js project, you might have opened your page… and thought:

“Wait… why are all my Tailwind styles gone? Did I break something?”

I did. I genuinely thought I had a bug in my setup. I double-checked my tailwind.config.ts, my globals.css, and even restarted the dev server… nothing.



After a bit of digging, I discovered: Tailwind 4 changed the recommended way to include Tailwind in your CSS.

What used to work

In Tailwind 3 (and earlier), your globals.css would look like this:

@tailwind base;
@tailwind components;
@tailwind utilities;

That’s all you needed — Tailwind would inject its base styles, components, and utilities.

What changed in Tailwind 4

Now, the new and recommended approach is much simpler:

@import "tailwindcss";
  • This single import pulls in everything: base styles, components, and utilities.
  • It works perfectly with Next.js App Router projects and PostCSS setups.
  • You no longer need separate @tailwind directives unless you have a very custom setup.

My Takeaway

I was surprised at first — it felt like a bug. But actually, it’s a cleaner, simpler setup. Once I switched to @import "tailwindcss";, everything started working immediately.

If you’re upgrading to Tailwind 4 in a Next.js project, don’t panic if your @tailwind base; classes suddenly disappear. It’s not a bug — it’s just the new way Tailwind works.

Quick Setup Checklist for Next.js + Tailwind 4

  1. Install dependencies:
    pnpm add -D tailwindcss postcss autoprefixer
    pnpm dlx tailwindcss init -p
  2. Update globals.css:
    @import "tailwindcss";
  3. Check tailwind.config.ts content paths:
    content: [
      "./app/**/*.{ts,tsx,js,jsx}",
      "./components/**/*.{ts,tsx,js,jsx}",
    ],
  4. Import globals.css in layout.tsx:
    import "./globals.css";
  5. Restart dev server:
    pnpm dev

Final Thoughts

It’s always a bit jarring when a library changes something that has “just worked” for years. But Tailwind 4’s approach is cleaner and simpler in the long run.

And honestly… I love the simplicity. One line, everything works.

❤️ Support This Blog


If this post helped you, you can support my writing with a small donation. Thank you for reading.


Comments

Popular Posts

2026 Begins: Choosing to Stay on the Path as a Blogger

A New Collection of Thoughtful Learning Apps — Now Available on iOS & Android