oh boy, supabase is MASIVE especially the fact that its open source and can be self-hosted, this is GOLD for us devs that have to create products in sanctioned countries! not because aws banned us, but just to stay safe, i dont want waking up on a prod outage because aws decided otherwise 💀
can you give some insight in how you process image files for the blok startup, how are you planning on delivering images that are as small as 60KB to avoid bad UX, please enlighten me.
Supabase's SDK has decent image transformation for MVP, in the future we will probably use a more advanced provider like cloudinary supabase.com/docs/guides/storage/image-transformations
Not totally related to the video but how is your experience with React Native? I’m thinking of diving into the mobile world and currently split between RN and Flutter. I have background in React, which favors RN, but most of the people I talk to say that the Flutter experience is better overall.
I jumped into react native off of the recommendations of my co-workers (they HATE flutter). So far the dev experience has been great, and expo is seriously absurdly powerful. However building to the app store continues to be miserable (I did some mobile game dev a few years ago, could be a fun story for the channel sometime). I much prefer web b/b in mobile you are abstracted so far up, that my build errors are 10,000 c++ traces that are meaningless to me in some podfile that has nothing to do with my code.
From a productivity point of view, I honestly don't think there is currently a better combo for app development than FlutterFlow with Supabase. These are real development tools, focused on productivity.
Why do you need separate server for mobile client, the svelte kit app will be the server + web client. You can expose necessary api routes in the svelte kit app to be called by both svelte frontend and mobile client. You do not need to connect supabase directly from mobile client.
This would 100% work, but then I would still have to make HTTP requests to the server instead of just running DB queries on the FE which massively speeds up development
@@bmdavis419 but writing db queries from frontend is considered a huge security risk na, so better to have db calls in the backend. And since you are handling both frontend and backend, how writing backend calls will hamper development speed?
with supabase you are not actually exposing the DB credentials on the client, the way they achieve an "INSERT" directly from the client is because there is an API gateway (kong) in front of another product called postgREST, what postgREST does is that it exposes/maps your models in REST routes, now after postgREST evaluates the request, it tries to execute the actual SQL code and postgres (the actual DB) will now evaluate and enforce RLS rules that were defined by you before doing the operation. That's how you stay safe.
i'll give my 2 cents, PWAs don't feel native and whenever a user opens any website, he doesn't think of good experience because there is hardly any good experience on the web, relatively compared to mobile apps, the user doesn't care if its a PWA, its still a website!, but for mobile apps, good experience is expected from the get-go, a user will immediately notice and judge your entire company based on how good your app is, so yeah...
Waoh... thanks for this insight on your infra. Really informative video. What do you think about using SvelteKit server api as a drop in replacement to supabase functions (for custom actions apart from crud) ? I was thinking about this for a while. Want to have your advice
Its not quite at 1.0 yet, and the reality is that Supabase has more features, a bigger team, and a much bigger ecosystem behind it. This is a pretty serious project, and realistically I'm just betting on the bigger more mature tech here
I think for a video like this, you really need to show the counter-factual. Is there a reason you can't do read and writes from a server to SupaBase? For the record, I've never used SB, but if in the future I ever want a service that goes to web and mobile apps, why not use SB?
@@bmdavis419 I mean, yeah. I've been loving drizzle with just a DB. But I don't actually see a significant negative to using supabase as described in your video. It basically looks like drizzle and I don't feel you articulated how it's significantly different in the video. You made a great case why you should use SB for a mobile app, but said little in the way of why one shouldn't use it for a SK app.
Hi there sir ben, thankyou for interacting with me. I'm sorry to brought this up but I'm having difficulties to find your email here in your channel . I can't find your email address, can u type it here ? Thanks .
oh boy, supabase is MASIVE especially the fact that its open source and can be self-hosted, this is GOLD for us devs that have to create products in sanctioned countries! not because aws banned us, but just to stay safe, i dont want waking up on a prod outage because aws decided otherwise 💀
Unless you go bare metal, you never escape that, whatever provider you use, with supabase or without
Would love to see a video how to self host suipabase in docker container.
@@cristianbilu you can self-host supabase with your own metal, also every feature or product on supabase in open-source.
discovered your content by pure coincidence. I'm convinced you will have a million followers in 3 or 4 years. Keep going!
Appreciate it, I certainly hope so lol
can you give some insight in how you process image files for the blok startup, how are you planning on delivering images that are as small as 60KB to avoid bad UX, please enlighten me.
Great question!
Supabase's SDK has decent image transformation for MVP, in the future we will probably use a more advanced provider like cloudinary supabase.com/docs/guides/storage/image-transformations
Not totally related to the video but how is your experience with React Native? I’m thinking of diving into the mobile world and currently split between RN and Flutter.
I have background in React, which favors RN, but most of the people I talk to say that the Flutter experience is better overall.
I jumped into react native off of the recommendations of my co-workers (they HATE flutter). So far the dev experience has been great, and expo is seriously absurdly powerful. However building to the app store continues to be miserable (I did some mobile game dev a few years ago, could be a fun story for the channel sometime). I much prefer web b/b in mobile you are abstracted so far up, that my build errors are 10,000 c++ traces that are meaningless to me in some podfile that has nothing to do with my code.
From a productivity point of view, I honestly don't think there is currently a better combo for app development than FlutterFlow with Supabase. These are real development tools, focused on productivity.
Why do you need separate server for mobile client, the svelte kit app will be the server + web client. You can expose necessary api routes in the svelte kit app to be called by both svelte frontend and mobile client. You do not need to connect supabase directly from mobile client.
Yeah I was wondering the same thing… Is the issue performance, latency, or what?
This would 100% work, but then I would still have to make HTTP requests to the server instead of just running DB queries on the FE which massively speeds up development
@@bmdavis419 but writing db queries from frontend is considered a huge security risk na, so better to have db calls in the backend.
And since you are handling both frontend and backend, how writing backend calls will hamper development speed?
Besides the RLS from Supabase, you are actually exposing the DB credentials in the client. How is that secure?
Row level security rules supabase.com/docs/guides/auth/row-level-security
with supabase you are not actually exposing the DB credentials on the client, the way they achieve an "INSERT" directly from the client is because there is an API gateway (kong) in front of another product called postgREST, what postgREST does is that it exposes/maps your models in REST routes, now after postgREST evaluates the request, it tries to execute the actual SQL code and postgres (the actual DB) will now evaluate and enforce RLS rules that were defined by you before doing the operation. That's how you stay safe.
Would you be open to giving your thoughts on why you want to go with a native app as opposed to a PWA?
The core reason is that we need it on the App Store. Our target market is gonna have zero clue what a PWA is and we will never be able to grow
i'll give my 2 cents, PWAs don't feel native and whenever a user opens any website, he doesn't think of good experience because there is hardly any good experience on the web, relatively compared to mobile apps, the user doesn't care if its a PWA, its still a website!, but for mobile apps, good experience is expected from the get-go, a user will immediately notice and judge your entire company based on how good your app is, so yeah...
@@abdirahmanni agree, also with app you are kinda required to do notifications and other stuff which can be pain in the ass
@@doktormacak007 i agree but money speaks, its just what it is man, i cant help but implement it, i wish money grew on trees! 😆
Waoh... thanks for this insight on your infra. Really informative video. What do you think about using SvelteKit server api as a drop in replacement to supabase functions (for custom actions apart from crud) ? I was thinking about this for a while. Want to have your advice
Would work perfectly. Both would fill the role of BE REST endpoints, I just find supabase a bit more convenient
i think it's better to use svelte native with native with native script
Just signed up for Blok app. Good job. How did you meet the founder and the design guy?
Through my university, it has been awesome working with a designer and product guy lol
google auth with ios. its been tough. hopefully library maintainer fixes nonce
So what DB and Auth solution do you recommend on a svelte kit app?
Congrats on Blok btw 🎉
Lucia + planetscale or turso
@@bmdavis419 thank you, this is very valuable to me
Supabase ve pocket base? Surely pocketbase would be much better especially for someone that likes having his own backend
Its not quite at 1.0 yet, and the reality is that Supabase has more features, a bigger team, and a much bigger ecosystem behind it. This is a pretty serious project, and realistically I'm just betting on the bigger more mature tech here
How do you use className on VIew in React Native?
Native wind: www.nativewind.dev/overview/
@@bmdavis419 Thanks
Maybe I missed it, but I didn't really catch why you prefer this to Firebase. Was it the client-side libraries? Firebase has those too 🤔
SQL and open source
Does it handle IAP and subscription verifications?
Have not set any of that up yet but it easily could, at the end of the day it really is just postgres and some edge functions
why not in swift?
I already have years of react experience and we want to make it cross platform
What is your vscode font?
Jetbrains mono nerd font
I think for a video like this, you really need to show the counter-factual. Is there a reason you can't do read and writes from a server to SupaBase? For the record, I've never used SB, but if in the future I ever want a service that goes to web and mobile apps, why not use SB?
U can use it on the server, and it works great (see the deep dive for a full open source app example), I just prefer the other options
@@bmdavis419 I mean, yeah. I've been loving drizzle with just a DB. But I don't actually see a significant negative to using supabase as described in your video. It basically looks like drizzle and I don't feel you articulated how it's significantly different in the video. You made a great case why you should use SB for a mobile app, but said little in the way of why one shouldn't use it for a SK app.
In your production apps, what were the other options you would use in a nextjs application?@@bmdavis419
Why not Pocketbase?
Not at 1.0 yet, and supabase just has more features/power
Concurrency is weak in supabase.
Hi there sir ben. I saw your tweet finding video editor. Do you have an email address so I can send my portfolio and works. Thanks
www.youtube.com/@bmdavis419/about
Hi there sir ben, thankyou for interacting with me. I'm sorry to brought this up but I'm having difficulties to find your email here in your channel . I can't find your email address, can u type it here ? Thanks .
@@bmdavis419i already emailed you sir. Thanks