Addressing the ZeroToShipped Pivot

The ZeroToShipped Course is COMPLETE! 🎉

The course is fully completed and has been available for a while now. Only a single bonus module covering AI integration, Telegram bots, and other supplementary content was not included.

Note: I apologize for not sending a mass email when the course was completed. I only tweeted about it and moved on with my life, which was a mistake on my end. If you missed the announcement, I'm truly sorry about that.

Access Your Course Materials

Hey,

Let's address the ZeroToShipped pivot!

Last year I launched the course which was mostly based on: Blitz, Next (Pages Router) and Mantine.

Since then, a lot has changed, and with AI moving so fast it feels like 35 years have passed. I really couldn't predict that all of these things might happen, and where the industry will go. Let's address the course stack, point by point.

Mantine

I loved the philosophy of Mantine because it came with so much out of the box. In the middle of recording the course, they completely pivoted their DX in version 7. I'm always pursuing the fastest way to do things, and creating CSS modules for each component, in 2025, is absolutely the opposite of that. Telling people to "keep using the old version 6 of Mantine" wasn't a solution, and I didn't like it at all.

Mantine → Tailwind transition

I was a Tailwind hater for so long, but I've finally seen the light. This is the best and fastest way to style your apps. What took me 7 lines of code in Mantine is usually 2 classnames in Tailwind. A major bonus is that LLMs have so much training data on it, and can generate amazing designs with it (especially sonnet 3.7). All the generators like v0, bolt, etc, output tailwind code. I still miss how most things in Mantine came out of the box, but I'm not going back to it at this point because there are so many community libraries compatible with shadcn, you can find any component that you might need. I even made my own UI library on top of it (compatible with shadcn): Kitze UI. This library is neatly integrated in the new ZTS boilerplate.

Blitz

I had high hopes for Blitz. I thought it's gonna be the Laravel or RoR of the JS world. Unfortunately, the project is very stale and not a lot of people care about it anymore, especially the original creator. Most of my main apps are still running on Blitz, and they will keep running it fine, I just won't recommend people to create a new app in 2025 using Blitz, because of a few reasons:

  • You might not get the support that you need (maintainers try, but it's different when an entire community cares about a library)
  • Incompatibility with latest Next or other packages: next is moving fast, and you don't want to rely on blitz to make sure it works with the latest version. At some point, I'm assuming it will stop working with some version of Next.
  • No way to use the API on mobile. This was the killer point for me. I wanted to build a native app for Benji and I had to do *tons* of hacks to reuse the Blitz api, and the end result is still not fully typed. It's super annoying to work with.

Next Pages Router

I loved pages router, and still love it. I still don't like the concept of server components, and I'm going to continue to use client side libraries for fetching data (trpc, react query, etc) for now.

For this new boilerplate, I decided to give app router a chance, and there's so many nice things about it (if you ignore server components):

  • Adding og images generated with jsx/tailwind is super easy
  • Layouts and nested layouts are amazing.
  • The structure that I have in the new ZTS boilerplate is my favorite project structure I've had so far. I can have a landing page and an app in the same repo, while the root domain serves the correct thing based on middleware and a cookie. The separation is super clean and I love it.

The New Boilerplate

As I said, things have changed, and people want to ship *fast*. No one wants to sit down and watch hours of video recordings in order to ship their first app. Also, when things inevitably change in the industry, you cannot go back and rerecord an entire course, but you can easily update a boilerplate.

That being said, the new ZTS boilerplate has *nothing* to do with the course. I'm just using the name and domain because it's a good brand and don't want new people to purchase the course anymore. You can still access the course materials and they'll remain available forever on Labz.

I spent more than a month on writing everything from scratch in a completely new stack, so this has no connecting point to the old course. I pulled my hair out trying to glue all of these pieces together, so you don't have to. It's a super solid starting point and you can go from 0 to a deployed app in less than 15 minutes. I even made a nice env generator so you don't mess up your env vars when deploying. We have a new discord community that you will get access to, and a few people already have a deployed app in production, which is amazing!

You'll also have access to me if you have any questions about your stack, an idea that you want to make, etc.

The new boilerplate has a dope landing page, a blog, about/pricing pages, admin panel, a mobile web version that feels like a native app and sooo many other things out of the box. You can take a look at the demo and the docs to see what you would get.

I'm very grateful that you supported my course, so I'm giving you 50% discount if you want to get the new boilerplate. Just use the ZTSOG code at checkout. Honestly, $99 is peanuts compared to how much you get out of the box.

Get it for $99

If you have any questions or remarks I'll be happy to address them! Contact me at hi@kitze.io or DM me on Twitter (@thekitze).

Cheers