explaingit

powersync-community/powersync-convex-todolist-demo

Analysis updated 2026-05-18

0TypeScriptAudience · developerComplexity · 3/5Setup · moderate

TLDR

A React to-do list demo showing offline-first sync between local SQLite and a Convex backend using PowerSync, no custom server required.

Mindmap

mindmap
  root((repo))
    What it does
      Offline-first todo sync
      Local SQLite to Convex
      Live GitHub Pages demo
    Tech stack
      React TypeScript
      Vite
      PowerSync
      Convex
    Use cases
      Learn offline-first sync
      Prototype a synced app
      Study PowerSync Convex setup
    Audience
      Developers
    Setup
      Docker local stack
      One command dev script
      Demo mode needs no backend

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Try a live offline-first to-do app in demo mode with no backend setup.

USE CASE 2

Learn how to sync a local SQLite database with a Convex backend using PowerSync.

USE CASE 3

Use the Docker-based local dev stack as a starting point for your own offline-first app.

USE CASE 4

Study how PowerSync uploads queued local writes to Convex mutations and streams changes back.

What is it built with?

ReactTypeScriptVitePowerSyncConvex

How does it compare?

powersync-community/powersync-convex-todolist-demo0xradioac7iv/tempfsabboskhonov/hermium
Stars000
LanguageTypeScriptTypeScriptTypeScript
Setup difficultymoderatemoderatemoderate
Complexity3/53/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Full local dev requires Docker for PowerSync, Convex, and MongoDB, demo mode skips all of that.

No license information is provided in the README.

In plain English

This repository is a demonstration app that shows how to build a to-do list that works offline and automatically syncs your data when you are back online. It solves the challenge of keeping a local copy of your data in sync with a cloud backend without requiring a separate server you have to build and manage yourself. The app uses PowerSync to handle the sync layer. When you add or complete a to-do item, that change is first written to a local SQLite database sitting right in your browser. PowerSync then queues those changes and uploads them to Convex, a backend-as-a-service that stores the data in the cloud. When any other client connects, PowerSync streams the latest changes back down, so every device sees the same state. Authentication is handled by Convex Auth using email and password sign-in, so there is no separate Node.js backend to write. The frontend is built with React and TypeScript, uses Vite as the development toolchain, and includes Material UI for the demo interface. For local development, the entire backend stack, meaning PowerSync Service, Convex, and MongoDB, runs inside Docker containers and is started with a single command. A demo mode is also included for environments like GitHub Pages where no backend is available. In that mode all writes stay local in the browser and no account is needed. A hosted live demo is linked in the README so you can try the app without installing anything.

Copy-paste prompts

Prompt 1
Help me run this PowerSync and Convex to-do demo locally with pnpm dev:local.
Prompt 2
Explain how PowerSync syncs local SQLite writes to Convex in this demo app.
Prompt 3
Walk me through what demo mode does differently from the normal Convex-connected mode.
Prompt 4
Show me how to deploy this app to GitHub Pages using the included workflow.

Frequently asked questions

What is powersync-convex-todolist-demo?

A React to-do list demo showing offline-first sync between local SQLite and a Convex backend using PowerSync, no custom server required.

What language is powersync-convex-todolist-demo written in?

Mainly TypeScript. The stack also includes React, TypeScript, Vite.

What license does powersync-convex-todolist-demo use?

No license information is provided in the README.

How hard is powersync-convex-todolist-demo to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is powersync-convex-todolist-demo for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.