I would love a video about Tailwind officially being in Expo! I have an app styled with Nativewind, but it didn't support all classes, such as "gap" and some text-styles; I had to use a separate style={{gap: 8}} for components that needed a gap. Better support would be phenominal!
Maybe it's ok for a small app. But weird for an api that could serve multiple apps. I mean it's nice that you can start one app that can do the mobile, the web and the server and it's even valuable if you are a solo dev. Not sure in a company who want to be able to scale things up.
I don't know if I really agree with the "mobile devs have a disdain for servers" take. I've been professionally developing mobile apps for around 10 years now and the reason firebase is big is not only because it abstracts away a server but because it abstracts away a lot of pain points with stuff like cross platform push notifications, analytics, crash reporting, app distribution and authentication that we had to deal with in the past. Almost all mobile apps I have built still have a custom PHP/Java/TS server running somewhere as firebase alone is quite limiting and annoying to deal with for server stuff.
Another important thing to note is you actually can test your backend as you write it without the need to deploy it first, since you cannot connect to localhost when running expo app in development (or at least we didnt find a way). That was the exact painpoint we had when developing a mobile app with hasura backend a while ago. Even the simplest change in backend meant waiting few minutes for the backend to deploy, and only then you could see what bugs you made this time
I've been building mobile apps for 8 years now and I can't see this taking off at all for anyone who isn't already doing react native. There's no path to on-boarding mobile devs to using web dev tools. Going from complete IDE integration with build and deploy, to making a bowl of spaghetti of loosely related build steps with different CLI tools feels like going back a decade.
This is amazing! It's cool that we are a step closer to RSC in mobile, but currently it doesn't really solve the problem of api versioning. Might as well build the api in GO or NextJS imo. But still very good first step.
Likewise +1 to the native Tailwind stuff inside of Expo! We have a production app using rntwc which works very nicely, but are in the process of upgrading to Expo 50. Thanks for all this content!
Genuine question: why not develop a REST API with you preferred framework (you can even use the Vercel Serverless if you want) and just use that from the mobile app?
You mean don't see mobile devs adopting server endpoints for building RN/Expo Native apps? Why not? coming from a genuinely curious place as I have gotten into RN/Expo in the last year, and having a backend server out of the box sounds great to me. how do you manage your backend/server state/databases in your 11 years of development so far?
As an iOS dev, I've never felt a "fear" of servers. It's pretty rare to find a medium-large sized mobile application without a server since it's required for basic things like authentication. There's even whole communities around running Swift and Kotlin on the server (Vapor and Ktor). I've only really seen tools like Firebase be used as the entire backend in mobile tutorials where the main focus is building the application UI rather than writing the server.
I’m prototyping an Expo rewrite of my mobile app now… was about 40% ported to Ionic from the mobile app but I think dealing with the pain of pivoting the stack we use up front to another framework is worth it in the long run for the Expo Go DX alone especially now that Tailwind support is solid, and especially with these new backend features too.
@@BassEffector I am pretty much just using Ionic/Capacitor as a shell for an adapted version of the web app, and also using Ionic's modals and popovers only. Not using any of their other components because they are too opinionated about design (for example, built-in padding that can't be removed on the select box). However, the Expo prototype is already not going well, and I literally started it. The way Expo/RN handles responsive image sizes utterly baffles me. Like, how does NextJS handle responsive images better than a literal mobile app framework? I think for this app I'm going to keep it on Ionic, but there are definitely some mobile-specific projects I would use Expo for in the future.
being primarily a web dev, i would just throw up a lambda fn behind API Gateway via sst/serverless framework to handle mobile app endpoints. this for sure makes that easier since ive also grown accustomed to just using whatever api-route integration a lot of frameworks have built in these days. awesome stuff!
Problem I see with trying to get mobile Devs to care about the server is that servers cost money. If you're just creating an app 90% of the time you don't need a server.
Servers are useful when your app require a data comparison feature. Like Highscores, market value tracking or difference in price(eg costco and walmart etc)
I think this perspective is what Theo is missing the most -- mobile devs spending their time on UX, native components, cross-platform compatibility, and testing is EXACTLY WHY we use backend-as-a-service tools because we already spent 36 hours doing app dev. If I only have 4 hours for backend leftover, why would I choose to write my backend from scratch? My users don't give a shit if I wrote it from scratch or Firebase did it for me, they want a great app experience
@@pehclark7256 To be fair many of these things can be running off your home desktop too. The occasions where you actually need a server specifically for customers data is a little rarer. Mostly servers are required if you want: * multiplayer / real time collaboration (can also use P2P here) * distributed alerts/notifications/messages * to share or sell customer data * perform financial/sensitive transactions. * processing intensive tasks But to be fair, in most of these cases you would be better building a PWA or website anyway... Then you hit a large consumer base. The intersection between these things and actual apps which need to be on a mobile device is fairly limited. For instance an app activatable with google voice which stores and shares audio recordings of customers around the country.
You need to understand UI / frontend is only a part of mobile apps. There are background services, notifications, sensors, file system, broadcasts etc. etc. which mobile developers specialize in. There's no specific hate towards backend, but there are other concerns which they have more focus on. On the other hand, web development is simply frontend/backend. Also... C'mon API calls are no big deal.
I'm trying to learn how to code to create the website I want to. With this, I might also be able to develop the mobile app at the same time! Very excited to learn more about it.
Bit confused how deployment works for mobile apps. If one were to use expo-router then is /api the only one that gets hosted and everything else becomes the code for mobile application?
yes. it actually is the simple. `+api.js` files are independent entrypoints for creating serverless/lambda functions the frontend app/JavaScript code has one entry point, typically `app/index.js`, and all of the code that file refers to is bundled (via Metro bundler) into the app bundle (and as of v3 of Expo Router, there is even some code splitting in the bundle, but practically speaking it's still one bundle, especially for Native platforms)
i use fastapi as backend which generates typescript code client from fastapi generated docs. which can directly be used in any js project including react native
Hey! mobile dev here, around 7 years in the making. I have worked on projects with react, tailwind and also deployed some nest.js backends for my own projects and in my humble opinion this for sure makes a huge difference. For quick and dirty prototypes we have always preferred Firebase and anything firebase couldn't do we would spin up a Cloud Function, which isn't crazy fast but gets the job done. Now this is a game changer. I see myself starting to use react-native with expo and handling backend routes for my apps's. Amazing.
I created 2 apps with nativewind and used a node js backend. it was a vendor / client app kinda like uber. The only problem i am facing is that axios post takes a lot of time on some ios devices. Other than that i love using expo modules and tailwind styling
I don't make mobile apps but this really makes me want to try expo and react-native. Btw, I would love a video on both tailwind in expo and the expo router.
You don't make mobile apps *yet*, but if you're a web dev you can now easily make them since Expo has amped up their game in the last year -- I encourage you to give it a shot with a small app idea you have always had
I still remember the days where I was a server-hating mobile dev, what Theo is saying is 100 percent true. If you're GOT fan, think of backend-to-frotnend as south-to-north Westeros, and mobile dev being the true north or rather the "true front-end", it's always been a place where the majority of the work is handled on the client rather than the server.
But what’s the difference between having two separate projects (the Expo App and an API, maybe using Node Express) and having both on the same project? What benefits does this bring?
I don’t get the the cross platform story with Next/vercel so if I have a web app that needs backend code and and mobile app that needs backend code I have to write the same backend code in 2 different places?
This is a cool way to mock APIs response for e2e tests. And maybe .. just maybe you can write a few api proxies with this that can connect and get data from upstream services. This is assuming that you have a really thin node.js proxy.
For those who do not understand the point, this is about shared codebases. It's the idea that you have everything in one place. Your entities and contracts all from a single file so in the need of changes you do it once and it reflects everywhere
I don't really get it. Why the hell do you have to do this. It's way easier and clear to just make REST API and access from web, app or from mars if you want. Same thing without all these gimmicky looking stuff. What is the real benefit here?
You're not wrong, considering Expo's web bundler only introduced code splitting just over 1 month ago... BUT they are definitely making strides in the right direction. I'm sure the template app would be like 1MB for web with the basic boilerplate in it, but that's also because 99% of the users/devs use it for native only. (I don't blame them, they are infact a native-first platform, and for good reason) That 1% is surely to grow however if Expo continues to bring familiar Next.js/web like standards to its ecosystem
React Native must have emerged as an attempt to make mobile close to the web, however the limitations (which make it security) of the web mean that mobile can build things beyond the web.
hi theo, curious if you prefer your home for content creation over your studio? I'm at a similar crossroads, wondering if you have any buyer's remorse or anything of the sort, cheers.
I don’t see myself ever doing this, process is just too long. I like splitting my backend stuff elsewhere entirely using Golang or Rust not node. React native separate from web as well otherwise I’m so limited in the packages that I use which I don’t like, also you sacrifice the UX too much to force native apps to work like web. Not for me
Would love a video on Nativewind. I am building multiple apps with Nativewind v4 and hoping it gets stable released soon. Waiting on a fast refresh issue that is brutal and makes me reload like crazy.
I think his argument is React Native was so successful at bringing a framework, increased standards, and improved developer experience to native app development that it "forced" the existing native languages/platforms (Swift) to respond with their own framework (SwiftUI) that decreased boiler-plate, increased standards, and improved on DX
Hi, i am a mobile developer and i don't hate servers :-) sure it's used to be some kind of dark magic back in the day , but now i am just enjoy building them left and right.
Mobile devs hate servers because they don't want to be bankrupt by AWS traffic egress fees and they don't want servers as more surface area as an attack vector. They're trying to make optimized clients. The backend is a different beast with different skillsets. That's why Node and Vapor happened in the first place.
I noticed most frontend and mobile dev are not afraid of servers but are afraid of running servers in javascript. And so do many backend developers😅 i only found out nodejs servers have become easier
Lol, you nailed mobile devs. They're designers that wanted to see their app built so badly they suffered enough to learn basic coding to do it. But pushing beyond the very very basics and further towards backend is something only VERY few of them do
Mobile dev here. I would have put mobile devs way the other way. I love servers for absolutely everything. I always use servers when I can for everything. I've never met mobile devs like what you describe.
I do mobile apps, just for myself, but I don't much like the React syntax, so I'm using flutter and I'm not even scared to use server for my use cases 😅😂 (Also I'm more like fullstack developer, then just frontend developer) and it's kinda pitty, that flutter for web is not real html, but on the other way this is the mind set of flutter to be able to run it on any platform as easy as it can gets, just create the underlying renderers and you are off the races not implementing wrapper for the underlying system
I struggle to understand Theo's continuous push for using React on mobile. On the web sure, but I would argue that the native mobile ecosystem is leagues beyond the mess that is the web ecosystem and React.
Having the hability for a solo dev or small team to deploy to any platform using only 1 tech is massive, but I get that a big company can have different teams.
@@edumorango I think Theo’s understanding of computers is that there is a CPU inside the box, and a CPU is a type of react component.. only it’s in hardware, somehow.
You can just don't use React Native, it's just a tool with advantages and disadvantages. But RN is a big framework right now. Amazon, Microsoft, Facebook use it on big projects. So isn't like RN is the worst framework to create apps
Aren't API endpoint routes exactly the opposite use-case from server components? If we had server components, you would do the data fetching/processing on server component side, then stream in the data. With API routes, that only really makes sense if you are on the client-side only and have to do all of your data fetching to the server because there is no ability to render components at all, and everything must be fetched.
I know, it's a skill issue that can be fixed over time, but I am yet to see a mobile dev that actually knows what they're doing with any form of backend. They don't know how to write an sql query. I have seen way too many apps from huge American companies that essentially download the entire huge DB at startup
I would disagree on that take as a mobile dev. I don't mind servers and, in organisations when, we commicating with the web team i notice we it seems to be more concious of the backend and server side. Just my experience thought. We also need more system knowledge in general. I used to be a web dev full time so I can confirm that too
This is the most nonsense video I've seen in a while. I'm not sure you are aware, but before SPA's were a thing in Web, mobile devs were already doing "SPA"s ages ago. Most often mobile devs had to be working on the backend or helping the backend team understand the needs of transferring JSON over the web. Mobile devs early on had to deal with Offline apps, so SQL is also a piece of cake for mobile devs. Why would mobile devs have fear of Servers if we are pretty familiar with all the tech used on the backend? Or maybe your defenition of Mobile Dev is React Native devs? If you are a react native dev, you already have no idea what you are doing either way.
I would love a video about Tailwind officially being in Expo! I have an app styled with Nativewind, but it didn't support all classes, such as "gap" and some text-styles; I had to use a separate style={{gap: 8}} for components that needed a gap. Better support would be phenominal!
Co-signed… video on native Tailwind support please!
I second this
Me too 😢
absolutely! compare with tamagui
Samen
Expo added tailwind support? Very cool and deserves a video
What when where
Nativewind v4, the dev was hired by Expo iirc - Using it on a new project and it's missing a couple of things but it's pretty smooth
what? where does it says that?
@toparamennoodles9652 wait tauri supports native??
@@daphenomenalz4100 since v3 it supports mobile apps, but it's just a webview though
Maybe it's ok for a small app.
But weird for an api that could serve multiple apps.
I mean it's nice that you can start one app that can do the mobile, the web and the server and it's even valuable if you are a solo dev.
Not sure in a company who want to be able to scale things up.
I don't know if I really agree with the "mobile devs have a disdain for servers" take. I've been professionally developing mobile apps for around 10 years now and the reason firebase is big is not only because it abstracts away a server but because it abstracts away a lot of pain points with stuff like cross platform push notifications, analytics, crash reporting, app distribution and authentication that we had to deal with in the past. Almost all mobile apps I have built still have a custom PHP/Java/TS server running somewhere as firebase alone is quite limiting and annoying to deal with for server stuff.
Exactly!!
Another important thing to note is you actually can test your backend as you write it without the need to deploy it first, since you cannot connect to localhost when running expo app in development (or at least we didnt find a way). That was the exact painpoint we had when developing a mobile app with hasura backend a while ago. Even the simplest change in backend meant waiting few minutes for the backend to deploy, and only then you could see what bugs you made this time
I've been building mobile apps for 8 years now and I can't see this taking off at all for anyone who isn't already doing react native. There's no path to on-boarding mobile devs to using web dev tools. Going from complete IDE integration with build and deploy, to making a bowl of spaghetti of loosely related build steps with different CLI tools feels like going back a decade.
I don't think expo is really for native mobile devs.
Yeah @SulekSkelux makes sense
With expo it’s really not that bad anymore
And also you don’t want to push the need for a sever on mobile - you should be local-first when running an app on device.
@@alastairtheduke???
This is amazing! It's cool that we are a step closer to RSC in mobile, but currently it doesn't really solve the problem of api versioning. Might as well build the api in GO or NextJS imo. But still very good first step.
Likewise +1 to the native Tailwind stuff inside of Expo! We have a production app using rntwc which works very nicely, but are in the process of upgrading to Expo 50. Thanks for all this content!
Genuine question: why not develop a REST API with you preferred framework (you can even use the Vercel Serverless if you want) and just use that from the mobile app?
I was thinking the exact same thing
yeah it's not even that hard to do this
I learn alot from your videos honestly. I'm really excited to learn react native with all these features I've seen from expo!
Definitely give it a shot, it's a blast! Do you have any ideas for what app you could build?
@@seanblonien Ikr alot of cool stuff! Plus easy uploads with uploadthing 🤭
Been doing Android and ios dev for 11 years. Its so specialized, i don't see this happening.
You mean don't see mobile devs adopting server endpoints for building RN/Expo Native apps? Why not?
coming from a genuinely curious place as I have gotten into RN/Expo in the last year, and having a backend server out of the box sounds great to me. how do you manage your backend/server state/databases in your 11 years of development so far?
@@seanblonienperhaps by using other tools battle tested for backend?
As an iOS dev, I've never felt a "fear" of servers. It's pretty rare to find a medium-large sized mobile application without a server since it's required for basic things like authentication. There's even whole communities around running Swift and Kotlin on the server (Vapor and Ktor).
I've only really seen tools like Firebase be used as the entire backend in mobile tutorials where the main focus is building the application UI rather than writing the server.
I’m prototyping an Expo rewrite of my mobile app now… was about 40% ported to Ionic from the mobile app but I think dealing with the pain of pivoting the stack we use up front to another framework is worth it in the long run for the Expo Go DX alone especially now that Tailwind support is solid, and especially with these new backend features too.
Curious what plugins you used with Ionic. My biggest concern is having to rewrite all our BLE (Bluetooth Low Energy) and WiFi with React Native.
Why? Just why? 🫤
@@BassEffector I am pretty much just using Ionic/Capacitor as a shell for an adapted version of the web app, and also using Ionic's modals and popovers only. Not using any of their other components because they are too opinionated about design (for example, built-in padding that can't be removed on the select box).
However, the Expo prototype is already not going well, and I literally started it. The way Expo/RN handles responsive image sizes utterly baffles me. Like, how does NextJS handle responsive images better than a literal mobile app framework?
I think for this app I'm going to keep it on Ionic, but there are definitely some mobile-specific projects I would use Expo for in the future.
being primarily a web dev, i would just throw up a lambda fn behind API Gateway via sst/serverless framework to handle mobile app endpoints. this for sure makes that easier since ive also grown accustomed to just using whatever api-route integration a lot of frameworks have built in these days. awesome stuff!
good to start, extremely expensive if scales
@@aliadowz thankfully, ive got 0 users 🙏
Problem I see with trying to get mobile Devs to care about the server is that servers cost money. If you're just creating an app 90% of the time you don't need a server.
Servers are useful when your app require a data comparison feature. Like Highscores, market value tracking or difference in price(eg costco and walmart etc)
I think this perspective is what Theo is missing the most -- mobile devs spending their time on UX, native components, cross-platform compatibility, and testing is EXACTLY WHY we use backend-as-a-service tools because we already spent 36 hours doing app dev. If I only have 4 hours for backend leftover, why would I choose to write my backend from scratch? My users don't give a shit if I wrote it from scratch or Firebase did it for me, they want a great app experience
@@pehclark7256 To be fair many of these things can be running off your home desktop too. The occasions where you actually need a server specifically for customers data is a little rarer. Mostly servers are required if you want:
* multiplayer / real time collaboration (can also use P2P here)
* distributed alerts/notifications/messages
* to share or sell customer data
* perform financial/sensitive transactions.
* processing intensive tasks
But to be fair, in most of these cases you would be better building a PWA or website anyway... Then you hit a large consumer base. The intersection between these things and actual apps which need to be on a mobile device is fairly limited. For instance an app activatable with google voice which stores and shares audio recordings of customers around the country.
This is definitely something to keep an eye on, looks really cool 😮
You need to understand UI / frontend is only a part of mobile apps. There are background services, notifications, sensors, file system, broadcasts etc. etc. which mobile developers specialize in. There's no specific hate towards backend, but there are other concerns which they have more focus on. On the other hand, web development is simply frontend/backend.
Also... C'mon API calls are no big deal.
I'm trying to learn how to code to create the website I want to. With this, I might also be able to develop the mobile app at the same time! Very excited to learn more about it.
Won't it be simpler if whole api/ would be seperate thing? Why do I have to upload my whole expo project to vercel to just host backend?
Bit confused how deployment works for mobile apps. If one were to use expo-router then is /api the only one that gets hosted and everything else becomes the code for mobile application?
It’s just a lambda function that integrates with expo APIs which are primarily client side (js bundle)
yes. it actually is the simple. `+api.js` files are independent entrypoints for creating serverless/lambda functions
the frontend app/JavaScript code has one entry point, typically `app/index.js`, and all of the code that file refers to is bundled (via Metro bundler) into the app bundle (and as of v3 of Expo Router, there is even some code splitting in the bundle, but practically speaking it's still one bundle, especially for Native platforms)
How is this different than just installing vite or express inside my expo/react native project ? How does this help ?
i use fastapi as backend which generates typescript code client from fastapi generated docs. which can directly be used in any js project including react native
Really nice, I had no idea RN Expo can do this
Hey! mobile dev here, around 7 years in the making. I have worked on projects with react, tailwind and also deployed some nest.js backends for my own projects and in my humble opinion this for sure makes a huge difference. For quick and dirty prototypes we have always preferred Firebase and anything firebase couldn't do we would spin up a Cloud Function, which isn't crazy fast but gets the job done. Now this is a game changer. I see myself starting to use react-native with expo and handling backend routes for my apps's. Amazing.
I didn't know that Vercel supports different languages in the `api` folder -- that's really cool
Learn a proper backend.
@@shadmansudipto7287 Not sure what you mean here? My job is a mixture of Node, Python, Go, and Rust backend/lambda/CLI code
I created 2 apps with nativewind and used a node js backend. it was a vendor / client app kinda like uber. The only problem i am facing is that axios post takes a lot of time on some ios devices. Other than that i love using expo modules and tailwind styling
Please can we use Expo to create a react native into Production?
I don't make mobile apps but this really makes me want to try expo and react-native. Btw, I would love a video on both tailwind in expo and the expo router.
You don't make mobile apps *yet*, but if you're a web dev you can now easily make them since Expo has amped up their game in the last year -- I encourage you to give it a shot with a small app idea you have always had
defo gonna use this on my next project
I still remember the days where I was a server-hating mobile dev, what Theo is saying is 100 percent true.
If you're GOT fan, think of backend-to-frotnend as south-to-north Westeros, and mobile dev being the true north or rather the "true front-end", it's always been a place where the majority of the work is handled on the client rather than the server.
waiting for the moment when Expo replaces Next :D
But what’s the difference between having two separate projects (the Expo App and an API, maybe using Node Express) and having both on the same project? What benefits does this bring?
I don’t get the the cross platform story with Next/vercel so if I have a web app that needs backend code and and mobile app that needs backend code I have to write the same backend code in 2 different places?
Looks cool, but I think seamless integration with Vercel SDKs will make it better, especially Vercel AI.
You met the wrong set of Mobile Devs 🤣🤣🤣
what about cookies?
i have zero idea from react native / expo
Does anyone know a React Native Full Stack boilerplate ? Wondering if Theo has done/will make one.
T3 turbo has that
This is a cool way to mock APIs response for e2e tests.
And maybe .. just maybe you can write a few api proxies with this that can connect and get data from upstream services. This is assuming that you have a really thin node.js proxy.
For those who do not understand the point, this is about shared codebases. It's the idea that you have everything in one place. Your entities and contracts all from a single file so in the need of changes you do it once and it reflects everywhere
Great that there is more focus on mobile/app development. Love these videos!
I don't really get it. Why the hell do you have to do this. It's way easier and clear to just make REST API and access from web, app or from mars if you want. Same thing without all these gimmicky looking stuff. What is the real benefit here?
Commenting to say I concur, and this is important.
The opportunity to have typesafety with tools like trpc is one, but in general I think they just want mobile devs to start thinking about backend.
imagine if theo got a low taper fade 🗣🗣
And a perm
I haven't had much exposure to mobile devs so I am also very surprised to learn that they don't like servers
Backend dev who’s never touched web ui/frontend at work. I have the exact opposite fear 😂
You shouldn't. It's fun
😂
in 08:25 - the command typed was
sanbox bunx ...
What is this sandbox ? is it a NPM package ?
Sandbox is the name of directory.
To me React Native is the best way of making apps 100 times more heavy for no reason
You're not wrong, considering Expo's web bundler only introduced code splitting just over 1 month ago...
BUT they are definitely making strides in the right direction. I'm sure the template app would be like 1MB for web with the basic boilerplate in it, but that's also because 99% of the users/devs use it for native only. (I don't blame them, they are infact a native-first platform, and for good reason)
That 1% is surely to grow however if Expo continues to bring familiar Next.js/web like standards to its ecosystem
it is true if you are using expo in react native, this is not a case with bare react native cli
React Native must have emerged as an attempt to make mobile close to the web, however the limitations (which make it security) of the web mean that mobile can build things beyond the web.
thinking to move out from vue ecosystem to react ecosystem just for react native and now expo. thx for share
it's pretty nice! if you ever wanted to build that cool app idea of yours for iOS, Android, *and* web, it's quite fun to get into!
Tailwind with Expo!! Much needed video.
bro that official tailwind & react native integration will be dope ❤👌
hi theo, curious if you prefer your home for content creation over your studio? I'm at a similar crossroads, wondering if you have any buyer's remorse or anything of the sort, cheers.
I wonder how many Webapps Theo has on his Vercel
What is the font style in his vscode?
I don’t see myself ever doing this, process is just too long. I like splitting my backend stuff elsewhere entirely using Golang or Rust not node. React native separate from web as well otherwise I’m so limited in the packages that I use which I don’t like, also you sacrifice the UX too much to force native apps to work like web.
Not for me
What name of the tool you are using in this video?
excalidraw
I'm running my api routes on Vapor. That are deployed via script added to xcode build pipeline. So far - extremely smooth. And no js ;)))
when they added tailwind support ?
Damn thats soo cool. i was thinking to create a backend with nest js 😂
i love working with expo
Would love a video on Nativewind. I am building multiple apps with Nativewind v4 and hoping it gets stable released soon. Waiting on a fast refresh issue that is brutal and makes me reload like crazy.
very interesting, how to debug it though?
How do you debug the server component on current device though?
which browser are you using?
f*ing awesome, for simple apps it's a great feature, is someone here currently builing a complex app with expo and api router ? curious how it runs
What do you mean by SwiftUI with RN?
Was confused by that too lol. Two very different things
I think his argument is React Native was so successful at bringing a framework, increased standards, and improved developer experience to native app development that it "forced" the existing native languages/platforms (Swift) to respond with their own framework (SwiftUI) that decreased boiler-plate, increased standards, and improved on DX
AuthJS/NextAuth in react native??
Hi, i am a mobile developer and i don't hate servers :-) sure it's used to be some kind of dark magic back in the day , but now i am just enjoy building them left and right.
Mobile devs hate servers because they don't want to be bankrupt by AWS traffic egress fees and they don't want servers as more surface area as an attack vector.
They're trying to make optimized clients. The backend is a different beast with different skillsets. That's why Node and Vapor happened in the first place.
First off ... you really gOtTa stop stuffing vercel down my throat mate, that said, ability to put any language in API directory is 🔥.
I noticed most frontend and mobile dev are not afraid of servers but are afraid of running servers in javascript. And so do many backend developers😅 i only found out nodejs servers have become easier
Lol, you nailed mobile devs. They're designers that wanted to see their app built so badly they suffered enough to learn basic coding to do it. But pushing beyond the very very basics and further towards backend is something only VERY few of them do
He didn’t say that at all
Mobile dev here. I would have put mobile devs way the other way. I love servers for absolutely everything. I always use servers when I can for everything. I've never met mobile devs like what you describe.
I like you man. you explain so good. thanks
would of loved to see how apis with security would work
Another opportunity to hear theo talk about Tailwind? Sure I'll take that.
Am I hallucinating or did Theo change the title to place the server expectation to Expo
You keep saying “Mobile Devs” but I think you should just say react developers z
I do mobile apps, just for myself, but I don't much like the React syntax, so I'm using flutter and I'm not even scared to use server for my use cases 😅😂 (Also I'm more like fullstack developer, then just frontend developer) and it's kinda pitty, that flutter for web is not real html, but on the other way this is the mind set of flutter to be able to run it on any platform as easy as it can gets, just create the underlying renderers and you are off the races not implementing wrapper for the underlying system
Flutter sounds really cool
If you put mobile devs faraway from backend, Im intrigued how far the distance between server to ol' school Desktop Apps 🙈
this is amazing
radical
I struggle to understand Theo's continuous push for using React on mobile. On the web sure, but I would argue that the native mobile ecosystem is leagues beyond the mess that is the web ecosystem and React.
Why would you do your App twice when you can do it once? No one is willing to pay for the extra cost
Having the hability for a solo dev or small team to deploy to any platform using only 1 tech is massive, but I get that a big company can have different teams.
@@edumorangoBecause js is bloated and you should do it all in C or assembly!!
@@edumorango I think Theo’s understanding of computers is that there is a CPU inside the box, and a CPU is a type of react component.. only it’s in hardware, somehow.
You can just don't use React Native, it's just a tool with advantages and disadvantages. But RN is a big framework right now. Amazon, Microsoft, Facebook use it on big projects. So isn't like RN is the worst framework to create apps
When we have React Native server components it will make a lot of sense . I just hope Apple doesn’t block it.
Aren't API endpoint routes exactly the opposite use-case from server components?
If we had server components, you would do the data fetching/processing on server component side, then stream in the data.
With API routes, that only really makes sense if you are on the client-side only and have to do all of your data fetching to the server because there is no ability to render components at all, and everything must be fetched.
Super hyped
Would be cool to see a video on Tailwind for RN
Wait, so no need for PWA anymore?
Definitely talk about tailwind on expo 👍
Expo want to likely NextJS ?
Isn’t this just RPC or is it actually running a server?
I know, it's a skill issue that can be fixed over time, but I am yet to see a mobile dev that actually knows what they're doing with any form of backend. They don't know how to write an sql query. I have seen way too many apps from huge American companies that essentially download the entire huge DB at startup
Previous previous on expo about android is suck!
Now let's try the new version on Expo if this work. 🤔
Why would anyone use expo server and not any other well established tech
Quick Question, Why bother with RN when you can build PWAs?
I would disagree on that take as a mobile dev. I don't mind servers and, in organisations when, we commicating with the web team i notice we it seems to be more concious of the backend and server side. Just my experience thought.
We also need more system knowledge in general. I used to be a web dev full time so I can confirm that too
Consuming http apis in native Android is painful. At least from my experience
There are libraries that make it trivial
Distributed systems are a nightmare. Welcome (?)
so expo is new nextjs for RN xd
this trend of moving backend code to the frontend is doomed to fail...
please create a video abut tailwind on mobile.
Think I’m just gonna write my backend api in python and flask
For the 0 people that asked, I ended up using Deno
This is the most nonsense video I've seen in a while. I'm not sure you are aware, but before SPA's were a thing in Web, mobile devs were already doing "SPA"s ages ago. Most often mobile devs had to be working on the backend or helping the backend team understand the needs of transferring JSON over the web. Mobile devs early on had to deal with Offline apps, so SQL is also a piece of cake for mobile devs. Why would mobile devs have fear of Servers if we are pretty familiar with all the tech used on the backend? Or maybe your defenition of Mobile Dev is React Native devs? If you are a react native dev, you already have no idea what you are doing either way.
Indeed. Mobile devs have been using SQLite before most web devs even knew it existed.
This is so cool!