Thanks for the video on Remix. I myself started a new project using Next.js 13, but after time I gave up and switched to Remix. It is a brilliant framework !
So glad you tried it out, Cody! The more you use it, the easier it gets. There are little things here or there that can be trickier in more complex scenarios, but with some good logic-writing, you can always add your own stuff to make it your own. Keep exploring!
I think it's a really cool perk of using Remix that if you ever wanna not use SSR, the patterns are basically the same if you use react router now so being comfortable with one kinda makes you're comfortable in both.
But isn't it inefficient to write your api routes with client components? Like if you want the backend api for your mobile app you would need to first host the entire REMIX or NEXT app just so that you can use the backend functions?
@@winningtredster2104 yes. the client calls these remix api routes, which then call our actual backend. They are just there to interface between the two.
if rich harris / primeagen were tasked with making a react metaframework, they'd make remix. Its just this pragmatic performant framework and I love what they have accomplished.
Quick hint: don’t do console.log(“params”, params), do console.log({ params }) instead. It’s very efficient and readable. Invariant is an extra package to make sure that variable exist after invariant line (it’s like if (!variable) return).
Yeah. So basically, your loader is the server and the component is always client. Changing the updatetitle state could've been achieved with form.fetcher or something like that, although remix generally encourages mostly HTML, so an update route would be ideal. In regards to the action, I agree the lack of typed params and having to switch cases based on intents could definitely be handled better, but overall, remix offers a less buggy and more intuitive experience.
"Modern" frameworks are so funny. They all lure you in with examples of the simplest projects where you see beautiful code and cool DX. But this is just a scam. This is not suitable for real production projects, such tools are simply not ready for this and force you to spend hours digging for issues and writing custom solutions on top of frameworks. Stop promoting alpha versions and show real production tools that are really used in large projects
I have never seen them. And just because the developers are talking about a stable version, this does not mean that the framework is ready for production. This means that its basic configuration is stable. How often do you meet projects based on basic configurations?@@WebDevCody
Finally, you tried remix 👍🏻. I personally like remix very much, my development flow just feels way faster than in the competing alternatives.
Thanks for the video on Remix. I myself started a new project using Next.js 13, but after time I gave up and switched to Remix. It is a brilliant framework !
Great way of showing newbies how to learn something real fast and get an idea how it works, loved it!
Please keep making videos like this. It's so invaluable to see the full thought process of a developer trying a new technology like this.
So glad you tried it out, Cody! The more you use it, the easier it gets. There are little things here or there that can be trickier in more complex scenarios, but with some good logic-writing, you can always add your own stuff to make it your own. Keep exploring!
I think it's a really cool perk of using Remix that if you ever wanna not use SSR, the patterns are basically the same if you use react router now so being comfortable with one kinda makes you're comfortable in both.
We’re running all our production apps in remix. Hundreds and hundreds of routes and apis. It’s awesome.
But isn't it inefficient to write your api routes with client components? Like if you want the backend api for your mobile app you would need to first host the entire REMIX or NEXT app just so that you can use the backend functions?
@@winningtredster2104 yes. the client calls these remix api routes, which then call our actual backend. They are just there to interface between the two.
if rich harris / primeagen were tasked with making a react metaframework, they'd make remix. Its just this pragmatic performant framework and I love what they have accomplished.
Loved the part with the loader in remix, havent seen it before
Quick hint: don’t do console.log(“params”, params), do console.log({ params }) instead. It’s very efficient and readable. Invariant is an extra package to make sure that variable exist after invariant line (it’s like if (!variable) return).
Hope you post a comparison video between Remix and Next. Pros vs Cons
I’ll have to play around with it more, but that might be interesting
@@WebDevCody no worries. Take your time
YES PLEASE!
Thank you for using Remix!
The useActionData and useNavigation hooks help you to have optimistic UI and for example returning the update form to default state. Its very cool!!
Would like to see more Remix content
I would love to see some videos where you creat tests along the way. I am struggling to really get started with testing.
Yeah. So basically, your loader is the server and the component is always client. Changing the updatetitle state could've been achieved with form.fetcher or something like that, although remix generally encourages mostly HTML, so an update route would be ideal. In regards to the action, I agree the lack of typed params and having to switch cases based on intents could definitely be handled better, but overall, remix offers a less buggy and more intuitive experience.
When you said you are giving up on next you weren't kidding , this was fast :D
Good job babe!
I have also looked into remix docs after your previous video ! Can you please tell me which theme you are using
I would love for you to try laravel
Looks good, might give it a try too.
Have you played around with SvelteKit?
Yes it’s good as well
Have you tried qwick?, if yes any thoughts on it? Just in short if you can❤️❤️
I have not yet
@@WebDevCody thank you so much❤️
Performance wise qwik is better however they have lots of unresolve bugs on their github issues.
Looks cool. A little better and I hate to say I do face some pain in Next.js.
This lookss opinionated and a little bit better
I spent the last month building my app in the app router, with these negative opinions now do I have to switch? Or how to adapt to Next issues
I mean if it’s working for you and it doesn’t bother you, stick to next and app router. I just got tired of debugging caching issues
Remix might be the move. Vercel/Next is kind of pissing me off.
Amen
are your permanently switching to remix?
Probably temporarily, but I’m sure I’ll still make next content here and there
oh@@WebDevCody
The best brain fart is the routing. This one thing is keeping me away 😢
Every data action being a form is horrible. Like seriously they wrapped a delete button in a form………….
that makes it work without javascript. even before hydration you can delete things.
@@kkh0101 yes I know this. Doesnt mean it’s pleasant.
Just remember folks, if You are doing something on the server that could be done on the client You are doing something wrong.
and vice versa
No, it’s better to use server when possible
"Modern" frameworks are so funny. They all lure you in with examples of the simplest projects where you see beautiful code and cool DX. But this is just a scam. This is not suitable for real production projects, such tools are simply not ready for this and force you to spend hours digging for issues and writing custom solutions on top of frameworks.
Stop promoting alpha versions and show real production tools that are really used in large projects
why do you said that this is not real production proyects?
I think remix has been out for a while now, and people use it on production
I have never seen them. And just because the developers are talking about a stable version, this does not mean that the framework is ready for production. This means that its basic configuration is stable. How often do you meet projects based on basic configurations?@@WebDevCody
Too much code boilaplate I don't need in Next.js. New Next.js has gotten complicated too but this isn't it either.