255 karma · joined October 24, 2016
Here's a side-by-side comparison to GraphQL from some time back: https://twitter.com/flybayer/status/1256957956270120960
We're planning to switch pricing to tiers. Psychologically 30% sounds like a lot, although the end price is quite low. For example we have a site with close to 10 million requests per month with heavy server compute. Their cost is about AWS $300/mo and Flightcontrol $90/month.
The goal for beta was to reach Next.js production feature parity with legacy Blitz. Now we can turn to cleaning it up for other uses.
Blitz RPC has 1 minimal magic step, which is a webpack step to replace the resolver imports in client code with a fetch function and to add resolvers to the server-side API endpoint.
And we'll be adding an API that lets you use Blitz RPC without webpack or any compile step.
Yes, it's coming.
> does that mean it can be used with Vite?
Yes, but we do have a bit more work to clean up our internal package dependencies and APIs so that this works.
Again I repeat, that is what Blitz used to be. Blitz no longer wraps Next.js. It's no longer a framework.
Depends what you mean by "same way". Yes in that both provide fully typesafe client-server communication. No in that the Blitz implementation is a tiny fraction of the size and does not have any Typescript-related performance slowdown at scale like TRPC.
The Blitz RPC tech itself will scale forever. However as a company scales it'll probably face another problem which is API contracts between internal teams. When you hit that, you may want to adopt GraphQL.
> 2. Having got used to Vite I just cannot go back to Webpack (which IIRC Next still wraps).
Yep, I want Next.js to get off webpack too
If you properly build a large codebase using patterns like Clean Architecture, then tools like Next.js or Blitz should be fully isolated away from your app logic.
If you need auth in Next.js, your options are Blitz Auth or Next Auth. Try both and see which you like best.
If you need type safe client/server communication, Blitz RPC is one of the options.
Neither of these dictate absolute control over your code as your comment implies.
Blitz does not replace anything of Next.js. Rather, it compliments it's minimalism.
To build a full app, you need to add a lot of things on top of Next.js. Blitz provides some of those libraries.
[Feb 2020]: First announced. [Apr 2020]: First alpha release. [Feb 2021]: First beta release. [Dec 2021]: Decided to do major pivot.
Today the Blitz.js 2.0 pivot to a modular Next.js toolkit reached Beta status [1]
Previously Blitz abstracted Next.js, but Blitz 2.0 is now a modular toolkit that plugs into any new or existing Next.js app. Blitz picks up where Next.js leaves off, providing libraries and conventions for shipping and scaling small to large apps.
When I first created Blitz, my aim was to have an all-in-one fullstack framework for Javascript like Ruby on Rails. But that proved to be too difficult. I've decided that achieving an all-in-one framework for JS like Rails is too difficult unless you have a ton of funding and don't have to make meaningful money.
The difference with JS is that client-side frameworks like React have an incredible amount of complexity. Trying to manage all of that and all the other fullstack framework stuff like API layers, auth, file uploads, etc is too large of scope.
So now Blitz is no longer trying to do it all and is focusing on all the non-frontend functionality you need to ship web apps.
Going forward, we want to be the most trusted technical resource for rapidly building and scaling full-stack TypeScript apps.
[1] https://github.com/blitz-js/blitz/releases/tag/v2.0.0-beta.1
I highly recommend you build it in a monolithic approach, because it will make it a lot easier and faster to build.
Since you are mobile app heavy, I would probably go with GraphQL using RedwoodJS+Prisma or Next.js+Prisma+Pathos [1]
Also, new Blitz includes a plugin system, that allows you to easily integrate multiple modules, for example auth and RPC and have them work together seamlessly. And have things just work like you’d expect, such as query cache being deleted on log out, and queries refetched on log in.
The internals are significantly less complex now. Before, Blitz was a fork of Next.js, and dealing with that was a nightmare. Contributions dropped off significantly because of that.
Now features are nicely packaged and isolated. Much easier to reason about and contribute too.
Git push to deploy fargate containers + automatic CDN + easy custom domains + auto https + multiple services per environment.
Coming soon is databases, private workers, static sites, and multi service preview environments.
We set up everything with best practices using VPCs, etc. We link directly to AWS services from our dashboard, but you don't have to know anything about devops.
If any of you try it out, I'd love any feedback you have for us!
At the end of the day, you must try them each for yourself and find which one resonates most with you and your team.
Over 400 new projects are being created every day.
Keep in mind, Blitz is still pre-1.0, so there's a lot of folks wanting to use it that are waiting until 1.0 (expected by end of year).
But overall, it's only 1.5 years old. Getting massive adoption just takes time.