My Mobile App's Backend in 2023

Поделиться
HTML-код
  • Опубликовано: 27 янв 2025

Комментарии • 69

  • @abdirahmann
    @abdirahmann Год назад +24

    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 💀

    • @cristianbilu
      @cristianbilu Год назад +2

      Unless you go bare metal, you never escape that, whatever provider you use, with supabase or without

    • @belkocik
      @belkocik Год назад +3

      Would love to see a video how to self host suipabase in docker container.

    • @abdirahmann
      @abdirahmann Год назад +1

      @@cristianbilu you can self-host supabase with your own metal, also every feature or product on supabase in open-source.

  • @jugurtha292
    @jugurtha292 Год назад +4

    discovered your content by pure coincidence. I'm convinced you will have a million followers in 3 or 4 years. Keep going!

    • @bmdavis419
      @bmdavis419  Год назад

      Appreciate it, I certainly hope so lol

  • @abdirahmann
    @abdirahmann Год назад +4

    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.

    • @J3R3MI6
      @J3R3MI6 Год назад +2

      Great question!

    • @bmdavis419
      @bmdavis419  Год назад +1

      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

  • @arindampal6796
    @arindampal6796 Год назад +1

    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.

    • @J3R3MI6
      @J3R3MI6 Год назад +1

      Yeah I was wondering the same thing… Is the issue performance, latency, or what?

    • @bmdavis419
      @bmdavis419  Год назад +2

      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

    • @arindampal6796
      @arindampal6796 Год назад

      @@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?

  • @tfgg1490
    @tfgg1490 Год назад +1

    i think it's better to use svelte native with native with native script

  • @jimjones26
    @jimjones26 Год назад +4

    Would you be open to giving your thoughts on why you want to go with a native app as opposed to a PWA?

    • @bmdavis419
      @bmdavis419  Год назад +10

      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

    • @abdirahmann
      @abdirahmann Год назад +4

      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...

    • @doktormacak007
      @doktormacak007 Год назад +3

      @@abdirahmanni agree, also with app you are kinda required to do notifications and other stuff which can be pain in the ass

    • @abdirahmann
      @abdirahmann Год назад +1

      @@doktormacak007 i agree but money speaks, its just what it is man, i cant help but implement it, i wish money grew on trees! 😆

  • @GabrielGasp
    @GabrielGasp Год назад +6

    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.

    • @bmdavis419
      @bmdavis419  Год назад +7

      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.

    • @anotherjack
      @anotherjack Год назад

      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.

  • @ESArnau
    @ESArnau Год назад +4

    Besides the RLS from Supabase, you are actually exposing the DB credentials in the client. How is that secure?

    • @bmdavis419
      @bmdavis419  Год назад

      Row level security rules supabase.com/docs/guides/auth/row-level-security

    • @abdirahmann
      @abdirahmann Год назад +10

      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.

  • @amsterfy1767
    @amsterfy1767 Год назад +1

    google auth with ios. its been tough. hopefully library maintainer fixes nonce

  • @ESArnau
    @ESArnau Год назад +3

    Just signed up for Blok app. Good job. How did you meet the founder and the design guy?

    • @bmdavis419
      @bmdavis419  Год назад +2

      Through my university, it has been awesome working with a designer and product guy lol

  • @rasyasejati
    @rasyasejati Месяц назад

    Mannnn i wishhh there's svelte version of react native

  • @metatronicx
    @metatronicx Год назад +2

    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

    • @bmdavis419
      @bmdavis419  Год назад

      Would work perfectly. Both would fill the role of BE REST endpoints, I just find supabase a bit more convenient

  • @Mathes881
    @Mathes881 Год назад +1

    How do you use className on VIew in React Native?

    • @bmdavis419
      @bmdavis419  Год назад +1

      Native wind: www.nativewind.dev/overview/

    • @Mathes881
      @Mathes881 Год назад

      @@bmdavis419 Thanks

  • @parkerrex
    @parkerrex Год назад +1

    why not in swift?

    • @bmdavis419
      @bmdavis419  Год назад

      I already have years of react experience and we want to make it cross platform

  • @timattracts
    @timattracts Год назад +1

    So what DB and Auth solution do you recommend on a svelte kit app?

    • @timattracts
      @timattracts Год назад +3

      Congrats on Blok btw 🎉

    • @bmdavis419
      @bmdavis419  Год назад +1

      Lucia + planetscale or turso

    • @timattracts
      @timattracts Год назад

      @@bmdavis419 thank you, this is very valuable to me

  • @1998goodboy
    @1998goodboy Год назад +1

    Supabase ve pocket base? Surely pocketbase would be much better especially for someone that likes having his own backend

    • @bmdavis419
      @bmdavis419  Год назад +1

      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

  • @AmCanTech
    @AmCanTech Год назад

    Does it handle IAP and subscription verifications?

    • @bmdavis419
      @bmdavis419  Год назад

      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

  • @FahadAyaz
    @FahadAyaz Год назад

    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 🤔

  • @austincodes
    @austincodes Год назад

    What is your vscode font?

  • @ГенаПетров-н5ы
    @ГенаПетров-н5ы Год назад

    Why not Pocketbase?

    • @bmdavis419
      @bmdavis419  Год назад

      Not at 1.0 yet, and supabase just has more features/power

  • @stevenstavrakis6605
    @stevenstavrakis6605 Год назад

    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
      @bmdavis419  Год назад

      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

    • @stevenstavrakis6605
      @stevenstavrakis6605 Год назад

      @@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.

    • @trinizone1
      @trinizone1 Год назад

      In your production apps, what were the other options you would use in a nextjs application?@@bmdavis419

  • @greendsnow
    @greendsnow Год назад

    Concurrency is weak in supabase.

  • @ajpresbitero7752
    @ajpresbitero7752 Год назад

    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

    • @bmdavis419
      @bmdavis419  Год назад

      www.youtube.com/@bmdavis419/about

    • @ajpresbitero7752
      @ajpresbitero7752 Год назад

      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 .

    • @ajpresbitero7752
      @ajpresbitero7752 Год назад

      ​@@bmdavis419i already emailed you sir. Thanks