PowerSync
PowerSync
  • 27
  • 28 173
Local-first vs Offline-first in 100 Seconds
What is local-first and how does it compare to offline-first? How much do these concepts overlap and what are the key differences? The best place to start is understanding the evolution of consumer software: how old school/standalone apps changed with the advent of the cloud and what drawbacks came with cloud-first app architecture.
This video is part of the Local-First Key Concepts series.
Clips used in the series intro:
Simon Grimm local-first explainer: czcams.com/video/SnhNHjqIbNw/video.htmlsi=LrNn3ZF9ywb_rsGh
Peter van Hardenberg talk: czcams.com/video/KrPsyr8Ig6M/video.htmlsi=KT_g02svxLsIlf3z
Aaron Francis interview with Carl Sverre: czcams.com/video/R-Laxph9tQ4/video.htmlsi=_SKvkAuOZlnTQlCZ
LocalFirstFM with Dax Raad: czcams.com/video/aAdQBDAjjEk/video.htmlsi=XcQAfso7FFCtmreU
Syntax podcast with Johannes Schickling: czcams.com/video/TrVYBfIsOa0/video.htmlsi=OiN58dxYcTCDoXIA
DevtoolsFM with Steven Fabre: czcams.com/video/9a-5oOMvd04/video.html
zhlédnutí: 2 242

Video

PowerSync in 100 Seconds
zhlédnutí 2,4KPřed měsícem
PowerSync is a self-hostable sync layer for local-first apps. It connects to any Postgres and keeps local SQLite databases in sync in real-time. #programming #compsci #sql - website www.powersync.com - docs docs.powersync.com/self-hosting/getting-started Topics Covered - What is local-first? - What is PowerSync? - PowerSync self-host quickstart tutorial h/t @Fireship
PowerSync Open Edition in 65 seconds
zhlédnutí 812Před měsícem
Quick demo of the PowerSync Open Edition. Try the demo: github.com/powersync-ja/self-host-demo Full PowerSync backend source code: github.com/powersync-ja/powersync-service Docs: docs.powersync.com/self-hosting/getting-started
Demo: VueJS offline-first app syncing with Supabase
zhlédnutí 175Před 2 měsíci
Shows a simple Vue.js app syncing data in real-time, going offline, and then automatically syncing offline changes when online again. The app uses a local-first architecture that downloads relevant user data to a local SQLite database which enables offline capabilities and is kept in sync with Supabase through PowerSync's sync service: www.powersync.com
Demo: Kotlin Multiplatform offline-first app syncing with Supabase
zhlédnutí 154Před 2 měsíci
Shows a simple Kotlin Multiplatform app syncing data in real-time, going offline, and then automatically syncing offline changes when online again. The app uses a local-first architecture that downloads relevant user data to a local SQLite database which enables offline capabilities and is kept in sync with Supabase through PowerSync's sync service: www.powersync.com
Postgres Conf 2024: Local-first apps using Postgres logical replication
zhlédnutí 932Před 2 měsíci
postgresconf.org/conferences/2024/program/proposals/local-first-application-architecture-using-postgres-logical-replication www.powersync.com Local-first is an architecture where app code works directly with a client-side database which automatically syncs with a backend database in the background. This talk covers how we used Postgres logical replication to build PowerSync, a high-scalability ...
Demo: Swift offline-first app syncing with Supabase
zhlédnutí 191Před 2 měsíci
Shows a simple Swift To Do List app that's syncing data in real-time, going offline, and then automatically syncing offline changes when online again. The app uses a local-first architecture that downloads relevant user data to a local SQLite database which enables offline capabilities and is kept in sync through PowerSync's sync service: www.powersync.com
PowerSync Roadmap Update - April 2024
zhlédnutí 180Před 2 měsíci
Kobie takes us through the engineering priorities for PowerSync and some exciting developments that lie ahead. PowerSync website: www.powersync.com
JavaScript SPAs and the PowerSync Vue Composables Package
zhlédnutí 63Před 2 měsíci
Christiaan Landman goes through some background of JavaScript SPA frameworks and how he created Vue composables to make using PowerSync with Vue easy. Links: Vue composables package: www.npmjs.com/package/@powersync/vue API Reference: powersync-ja.github.io/powersync-js/vue-sdk
Ignite Cookbook Recipe: Local-First Data Using PowerSync and Supabase
zhlédnutí 87Před 2 měsíci
Trevor Coleman walks through the Ignite Cookbook Recipe he created for building local-first React Native apps, using PowerSync and Supabase. Links: Read the recipe: ignitecookbook.com/docs/recipes/LocalFirstDataWithPowerSync Chain React conference: chainreactconf.com/ Infinite Red: infinite.red/
Tutorial: Offline-first FlutterFlow app with Supabase and PowerSync
zhlédnutí 1,8KPřed 3 měsíci
PowerSync enables developers to build offline-first FlutterFlow apps that are robust in poor network conditions and have highly responsive frontends, while relying on Supabase for their backend. This step-by-step tutorial provides instructions for how to build an offline-first notes app using FlutterFlow, Supabase and PowerSync. Clonable FlutterFlow project: app.flutterflow.io/project/power-syn...
Local-First State Management at Local-First Meetup #13
zhlédnutí 234Před 3 měsíci
Local-First State Management at Local-First Meetup #13 Using SQLite local-first state management: - State is automatically persisted across page reloads - The database handles change detection for us - We can use plain SQL queries and views to filter and transform the state - We can use fast local queries to load any data from any component Local-First WebDev: localfirstweb.dev/ PowerSync: www....
Showcase: Using CRDTs with PowerSync
zhlédnutí 227Před 5 měsíci
CRDTs are a good fit for real-time collaborative text editing similar to Google Docs. This showcase covers how Yjs and the TipTap rich text editor can be used to build a collaborative text editor using PowerSync as an auto sync layer. See the code → github.com/powersync-ja/powersync-js/tree/main/demos/yjs-react-supabase-text-collab Note: Since this video was published, the demo was migrated fro...
PowerSync Roadmap Community Call February 2024
zhlédnutí 190Před 5 měsíci
Kobie takes us through engineering priorities for the next while.
Built with PowerSync Showcase: Jetpack Travel
zhlédnutí 119Před 5 měsíci
Jetpack Travel walks us through why they chose PowerSync for their cross-platform travel management app that works offline-first. Jetpack's app is built with React and React Native and launched in the App Store! Check out Jetpack → www.usejetpack.com/ Check out PowerSync → www.powersync.com
Introducing the PowerSync CLI
zhlédnutí 212Před 5 měsíci
Introducing the PowerSync CLI
Setting up Supabase and PowerSync
zhlédnutí 1,7KPřed 5 měsíci
Setting up Supabase and PowerSync
FULL TUTORIAL: Build an offline-first chat app with Flutter, Supabase and PowerSync
zhlédnutí 2,2KPřed 7 měsíci
FULL TUTORIAL: Build an offline-first chat app with Flutter, Supabase and PowerSync
Interview: Building an offline-first React Native Group Chat App
zhlédnutí 3,2KPřed 8 měsíci
Interview: Building an offline-first React Native Group Chat App
PowerSync Pro Tip for iOS Debugging on macOS
zhlédnutí 115Před 9 měsíci
PowerSync Pro Tip for iOS Debugging on macOS
Introducing the PowerSync React Native SDK
zhlédnutí 331Před 9 měsíci
Introducing the PowerSync React Native SDK
Showcase: PowerSync for Supabase and Flutter
zhlédnutí 823Před 9 měsíci
Showcase: PowerSync for Supabase and Flutter
PowerSync used in Production: Interview with TrashBlitz
zhlédnutí 214Před 9 měsíci
PowerSync used in Production: Interview with TrashBlitz
Demo: Flutter offline-first app syncing with Supabase
zhlédnutí 3,3KPřed 10 měsíci
Demo: Flutter offline-first app syncing with Supabase
Building an offline-first Flutter app with Supabase and PowerSync
zhlédnutí 4,5KPřed 10 měsíci
Building an offline-first Flutter app with Supabase and PowerSync
PowerSync React Native support coming, dashboard enhancements, updates to docs and more
zhlédnutí 114Před 10 měsíci
PowerSync React Native support coming, dashboard enhancements, updates to docs and more
PowerSync Architecture Overview
zhlédnutí 1,8KPřed rokem
PowerSync Architecture Overview

Komentáře

  • @alienmo6653
    @alienmo6653 Před 11 dny

    Awesome

  • @sambrucejoseph
    @sambrucejoseph Před 13 dny

    I have an app that saves data to appstate. Can I use this? Or is this only for SQLite?

  • @RickyC0626
    @RickyC0626 Před 16 dny

    Hold up, this isn't Fireship

  • @wandenreich770
    @wandenreich770 Před 16 dny

    not good click baiting use with fireships style

  • @Dieterbe
    @Dieterbe Před 20 dny

    Looks like a nice solution.

  • @Dieterbe
    @Dieterbe Před 22 dny

    Please use a bigger font next time so we can watch the video on mobile. Thanks !

  • @mehvix
    @mehvix Před 26 dny

    why does the content begin 30 seconds in

  • @kekkodance
    @kekkodance Před 26 dny

    fireship knockoff

  • @graphicsillusion8598
    @graphicsillusion8598 Před 26 dny

    Damn didn't even realize I was not watching a video with 1M+ Views. Great Content <3

  • @WillJackDo
    @WillJackDo Před 26 dny

    You clearly have talent and a keen choices about videos. Why are you trying to be a fireship clone?

  • @TheAleBecker
    @TheAleBecker Před 26 dny

    Great production! Hope you blow up

  • @sandwidimohamed4914
    @sandwidimohamed4914 Před 29 dny

    I was want to use but I let cloud version for pricing, after computation , price can some time high, else I really like your product

  • @justafreak15able
    @justafreak15able Před měsícem

    lol baiting with fireship thumbnails

  • @brianmolloy9393
    @brianmolloy9393 Před měsícem

    pretty sweet! hacking through and prediciting my future... any way to have a "powersync" code generator that has the .powersync already prepended? Definitely gonna much that up as this starts to get bigger...

  • @StabilDEV
    @StabilDEV Před měsícem

    how does powersync relate to replicache?

  • @marvinfok65
    @marvinfok65 Před měsícem

    What kind of shit is this? The screen is so small that you can't see anything!

  • @AbhishekKumar-jb4ky
    @AbhishekKumar-jb4ky Před měsícem

    i'm building a web application where a admin/user can login and see dashboard. .i have existing database. i only want some limited info on the user side to appear when no internet is ther. Can i only add PowerSync to some tables of the database only on user login side?

    • @powersync_
      @powersync_ Před měsícem

      Yes, you can do this. When you create the publication for PowerSync on Postgres, you can limit it to specific tables: docs.powersync.com/usage/installation/database-setup Sync Rules give further control over what is synced: docs.powersync.com/usage/sync-rules In the Sync Rules, by filtering rows based on user_id, you can sync data only for signed in users: docs.powersync.com/usage/sync-rules/organize-data-into-buckets

    • @AbhishekKumar-jb4ky
      @AbhishekKumar-jb4ky Před měsícem

      @@powersync_ also when i'm trying to connect my supabase this error is showing. " Supavisor does not support logical replication. Connect directly to the postgres instance. "

    • @powersync_
      @powersync_ Před měsícem

      @@AbhishekKumar-jb4ky Please follow the instructions here: docs.powersync.com/usage/installation/database-setup/supabase#connect-powersync-to-your-database

  • @StoriesWithGR
    @StoriesWithGR Před měsícem

    Nice Fireship - y style! And a really good Product Idea!!!! Btw you've credited @fireship as h/t. What does that mean exactly? Sorry for my ignorance 🙈

    • @powersync_
      @powersync_ Před měsícem

      H/t is an abbreviation for "hat tip". We use it to give credit or acknowledge the original source of an idea.

    • @StoriesWithGR
      @StoriesWithGR Před měsícem

      @@powersync_ Beautiful!

  • @antonperelygin2833
    @antonperelygin2833 Před měsícem

    looks like ElectricSQL

    • @powersync_
      @powersync_ Před měsícem

      The product is similar but there are notable differences, e.g. PowerSync's non-invasive architecture. Read more here; www.powersync.com/blog/electricsql-vs-powersync

    • @justiceessiel6123
      @justiceessiel6123 Před měsícem

      Sell us the sizzle not the steak​@@powersync_

  • @emeriktremblay3881
    @emeriktremblay3881 Před měsícem

    i previously tried to link it using the other method and was not succesful, I used sqlite only but now I will retry with this method that looks a lot easier. This solve exactly my problem as im doing a grocery list, I want users to be able to access the list but we also want to know what people have in their lists. Thank you guys great job !

  • @timothyshiu2263
    @timothyshiu2263 Před měsícem

    Awesome! 👏 PowerSync will be widely used in all full-stack apps. Looking forwards to release 1.0!

    • @kobiebotha9868
      @kobiebotha9868 Před měsícem

      Thanks for the feedback! PowerSync Cloud is at v1/stable, but I assume you're referring to the self-hosted version. For our self-hosted version: under the hood the sync service tech is actually v1/production ready. We're just working on improving the overall developer experience, fleshing out our docs and deployment guides, etc. before we mark it as v1. So the tech can be considered v1, but the developer experience might still be a bit bumpy for a week or two. Hope that makes sense!

  • @ApexGaara
    @ApexGaara Před měsícem

    Does this also sync transactional Operations for example through supabase if im using an database view/operation

    • @kobiebotha9868
      @kobiebotha9868 Před měsícem

      Hi, I'm not sure I understand your question - how are you using views exactly? Our client SDKs do support transactions and the sync protocol provides consistency.

    • @ApexGaara
      @ApexGaara Před měsícem

      @@kobiebotha9868 i meant supabase postgres functions and transactions and these for example can be used as reusable "views"

  • @YusifArbile
    @YusifArbile Před měsícem

    I love the idea of PowerSync yet till up now it’s hard to integrate in existing projects. For example I have a backend using Prisma ORM, and front end in Flutter with Drift sqlite wrapper. I tried for days to integrate PowerSync and I didn’t come up with a solution. Drift-PowerSync package is promising, yet it’s in early stages. I hope the documentation mentions integrating PowerSync with existing ORMs like Prisma

    • @powersync_
      @powersync_ Před měsícem

      We're happy to help solve any issues you're running into and hear your feedback. Our Discord server is the best place for this but let us know if you prefer a different way to discuss.

  • @eacardenase
    @eacardenase Před měsícem

    It seems the repo's link is broken.

    • @powersync_
      @powersync_ Před měsícem

      The repo is currently still private - it will be made public with the release happening soon!

    • @eacardenase
      @eacardenase Před měsícem

      @@powersync_ thank you!

  • @LowBrowGamerZ
    @LowBrowGamerZ Před měsícem

    Does this work using the Web Test Sessions? The SQLite Integration in Flutterflow does not support Web so neither can you test if youre on a free plan

  • @ashutoshrajput3757
    @ashutoshrajput3757 Před 2 měsíci

    i am getting this error when i am connect it to supabase "Supavisor does not support logical replication. Connect directly to the postgres instance."

    • @powersync_
      @powersync_ Před 2 měsíci

      Please follow the instructions here: docs.powersync.com/usage/installation/database-setup/supabase#connect-powersync-to-your-database

    • @ashutoshrajput3757
      @ashutoshrajput3757 Před 2 měsíci

      @@powersync_ thank you

  • @suen-tech
    @suen-tech Před 2 měsíci

    Thank you

  • @rom4ik666
    @rom4ik666 Před 2 měsíci

    Thanks! Looking forward to see the easter egg being announced!

  • @MyHealthierChoice
    @MyHealthierChoice Před 2 měsíci

    That's really awesome! Looking forward to start using this for my next project. Do you have any suggestion how to handle sync of media uploads. e.g profile picture in the user table? Thanks in advance

  • @gularz1982
    @gularz1982 Před 2 měsíci

    It's a great piece of software! I'm currently experimenting with it and it works really well, super reliable. I'll most likely end up as a paying customer :). It has some rough edges but I believe these will get smooth over time. One thing I couldn't get to work is the Kysely wrapper in JS. Whenever a query is executed it either gets executed once and the PowerSync connection gets terminated or it doesn't send the query to the PS service at all and terminates the connection. What I ended up with is I use wrapPowerSyncWithKysely to enable type safety features, I compile a type safe kysely query and pass it to the raw powerSync.execute(). I spent some time debugging the issue but it's some kind of race condition - sometimes it get's to the connector.uploadData method and sometimes it gets terminated even before it. powerSync.closed is set to true every time wrappedPowerSync.query[...].execute() is called.

  • @dxvfdfx
    @dxvfdfx Před 2 měsíci

    if you are using supabase why still need powersync, supabase already has realtime database ,right? just like firebase

    • @powersync_
      @powersync_ Před 2 měsíci

      PowerSync enables local-first development which provides realtime reactivity, simple state management and offline capabilities. This is different from Supabase's realtime functionality and also different from the limited offline functionality Firebase provides.

  • @zanesthename
    @zanesthename Před 2 měsíci

    Thanks, great overview.

  • @rehaanu
    @rehaanu Před 2 měsíci

    Your accent sound south african 😂 are you?

  • @rehaanu
    @rehaanu Před 2 měsíci

    Thank you 💯💯💯

  • @johanordenes1557
    @johanordenes1557 Před 2 měsíci

    It says Publication 'powersync' not found when Testing connection in PowerSync, have tried many ways to resolve the issue with no success, almost no docs as well. Minute 6:53

    • @powersync_
      @powersync_ Před 2 měsíci

      Thanks for pointing that out. It looks like the create publication step is not explicitly shown. The step is included in the written tutorial here: www.powersync.com/blog/flutter-tutorial-building-an-offline-first-chat-app-with-supabase-and-powersync#1-set-up-supabase-project-and-publication-to-powersync Let us know if you still have any issues - either here or on our discord.

  • @faisalkarim7392
    @faisalkarim7392 Před 3 měsíci

    Awesome guys. Useful for my use case, for farmers in low connectivity area.

  • @5sense866
    @5sense866 Před 3 měsíci

    How is this different from SQLite provided natively in FlutterFlow?

    • @kobiebotha9868
      @kobiebotha9868 Před 3 měsíci

      This keeps the data in SQLite in sync with Supabase, and you don't need to write synchronization code. This also works on Web.

    • @5sense866
      @5sense866 Před 3 měsíci

      Ok, so no need to use the SQLite natively provided in FlutterFlow? PowerSync is doing the function of SQLite + syncing, right? I’m only asking because I expected there to be some steps in this video about how to connect SQLite to PowerSync, but I didn’t see that and it confused me

    • @kobiebotha9868
      @kobiebotha9868 Před 3 měsíci

      Yes that is correct, PowerSync fully manages SQLite and you don't need to enable that. Thanks for the question, I might surface this in our docs.

    • @5sense866
      @5sense866 Před 3 měsíci

      That’s great - this solves a problem that’s on my list. Will take a closer look in coming weeks

  • @webdevelopment8760
    @webdevelopment8760 Před 3 měsíci

    great tutorial, thank you very much, would like to see a similar tutorial for expo react native though, that would be awesome =)

  • @rehaanu
    @rehaanu Před 3 měsíci

    Does it support flutterflow app

    • @powersync_
      @powersync_ Před 3 měsíci

      Yes we have a video guide on how to use PowerSync with FlutterFlow: czcams.com/video/eUcBCyPfVok/video.html

  • @jsagar95
    @jsagar95 Před 3 měsíci

    Great, thanks!

  • @moses5407
    @moses5407 Před 3 měsíci

    Great! What about multiuser sync and conflict avoidance? In this example, what if each user ads an item 5 while offline?

    • @powersync_
      @powersync_ Před 3 měsíci

      Hi there o/ Since writes go through your backend, you have full control over how conflicts should be treated. By default, when multiple users edit the same data while offline, the last write to the backend will win. But you can adjust that: maybe you want to track timestamps of updates so that the most recent write wins, or maybe you want to use CRDT data structures. PowerSync automatically ensures that all connected clients converge to the server state so all online users will see any updates in realtime. Further reading: Handling conflicts: docs.powersync.com/usage/lifecycle-maintenance/handling-update-conflicts Consistency: docs.powersync.com/architecture/consistency

  • @hermenegildomatabeia8869
    @hermenegildomatabeia8869 Před 3 měsíci

    thanks bro

  • @gularz1982
    @gularz1982 Před 3 měsíci

    Lovely, exactly what I'm looking for. Now, please, make it work with Expo Go.

    • @powersync_
      @powersync_ Před 3 měsíci

      Unfortunately not feasible with the stock Expo Go, but you can create your own dev build including powersync using EAS: docs.expo.dev/develop/development-builds/create-a-build/

    • @gularz1982
      @gularz1982 Před 3 měsíci

      @@powersync_ Yup, making my baby steps with it :) Cheers!

    • @corentinlt7859
      @corentinlt7859 Před dnem

      @@gularz1982 Hey Gularz, did you figure it out ?

  • @ChrisS-oo6fl
    @ChrisS-oo6fl Před 4 měsíci

    Can you do a video on setting this up with Flutter Flow. Since it’s a no code platform it might help that demographic out tremendously as many people have asked for this ability. I do understand that there’s a tutorial on the webpage and that it recommends assistance from more experienced team members. I just glanced it real quick, are the instructions still the same since FF added SQLite and the new local run editor? Or are there more simple ways to incorporate PowerSync now? It is fairly intimidating for someone just learning.

    • @powersync_
      @powersync_ Před 3 měsíci

      Yes, the local IDE and runner that FlutterFlow released should simplify the steps to enable PowerSync. We're currently testing that workflow with PowerSync and Supabase and should have a writeup available soon. In the meantime feel free to join our discord server where we can help you with any immediate installation questions.

  • @rizalalfandi0007
    @rizalalfandi0007 Před 4 měsíci

    What is the difference with elecric sql ?

    • @powersync_
      @powersync_ Před 4 měsíci

      HI! We published a detailed blog post on this: www.powersync.com/blog/electricsql-vs-powersync

  • @giorgiojoseotto5032
    @giorgiojoseotto5032 Před 4 měsíci

    is possible with flutterflow?

    • @powersync_
      @powersync_ Před 4 měsíci

      Yes, it is possible to use PowerSync with FlutterFlow, see our guide: docs.powersync.com/integration-guides/flutterflow-+-powersync

    • @wadanda
      @wadanda Před 3 měsíci

      Does any of this change with SQLITE now available in Flutterflow?

    • @powersync_
      @powersync_ Před 3 měsíci

      ​@@wadanda The PowerSync Flutter SDK ships with its own SQLite database that is ready to sync with a backend database. The SQLite database that you can add through FlutterFlow would be separate from the SQLite in the PowerSync SDK, and would not have syncing capabilities. Lastly, the FlutterFlow SQLite package is currently not supported on Web, whereas the PowerSync SDK does support Flutter Web.

  • @hojdog
    @hojdog Před 5 měsíci

    Sheeeeesh this is game changing

  • @powersync_
    @powersync_ Před 5 měsíci

    6:26 The Supabase dashboard UI has changed slightly since Supabase's IPv6 changes [1]. In the Supabase dashboard, you need to untick the "Use connection pooling" option before copying your Supabase database URI. See here for more details: docs.powersync.com/integration-guides/supabase-+-powersync#connect-powersync-to-your-supabase [1] supabase.com/blog/ipv6#supabase-support-for-ipv6

    • @ChrisS-oo6fl
      @ChrisS-oo6fl Před 4 měsíci

      Can you do a video tutorial on how to implement this with flutterflow? It would be awesome of there was a collaboration with them for an easy implementation option.q They finally added SQLite and of course supa. But no easy way to sync persistent data. This could be a great resource for novice users.

  • @yorgohoebeke
    @yorgohoebeke Před 6 měsíci

    Hi! Could you please create a tutorial on how to use powersync and supabase with flutterflow ? :)

    • @faisalkarim7392
      @faisalkarim7392 Před 5 měsíci

      I don't think this is available yet, based on the wishlist in Flutterflow community. Been waiting for this as well

    • @powersync_
      @powersync_ Před 3 měsíci

      ​@@faisalkarim7392 @yorgohoebeke this is now available: czcams.com/video/eUcBCyPfVok/video.html