惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

阮一峰的网络日志
阮一峰的网络日志
Apple Machine Learning Research
Apple Machine Learning Research
量子位
D
DataBreaches.Net
云风的 BLOG
云风的 BLOG
博客园 - 聂微东
博客园_首页
D
Docker
博客园 - 叶小钗
S
SegmentFault 最新的问题
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
J
Java Code Geeks
H
Hackread – Cybersecurity News, Data Breaches, AI and More
A
About on SuperTechFans
博客园 - 三生石上(FineUI控件)
F
Fortinet All Blogs
小众软件
小众软件
aimingoo的专栏
aimingoo的专栏
爱范儿
爱范儿
腾讯CDC
罗磊的独立博客
雷峰网
雷峰网
博客园 - Franky

Echo JS

billboard.js 4.1.0: Live resizing, configurable subchart, React subpath & CSP-safe worker From 1,256ms to 96ms: Fixing INP in a Massive React Dropdown GitHub - evoluteur/cymatics: Play a frequency and watch the sand settle into its Chladni figure, computed from the wave equation. Memdeklaro - The Basics of Decentralized Identity (DID) and Self-Sovereign Identity (SSI) How Railmid Works GitHub - evoluteur/platonic-solids: Turn the five Platonic solids in 3D, show their duals, read their measurements, and print the nets to fold your own. Sharing Application State in a URL GitHub - evoluteur/sacred-geometry: Sacred Geometry Generator: draw, tune, and export Vesica Piscis, Seed of Life, Flower of Life, Metatron's Cube, and the Golden Spiral as SVG Best of Self-Sovereign Identity: Digitalcourage, World Passport and Memdeklaro Reads Are Subscriptions - Migrating from Zustand to Coaction GitHub - evoluteur/binaural-beats: Simple web page to play binaural beats for sleep, meditation, relaxation, and focus: Delta, Theta, Alpha, Beta, and Gamma brainwave frequencies, with an optional pink or brown noise bed. toast-queue — Accessible, customizable toast notifications Building a High-Performance Data Grid in React, Vue, and Svelte I built a flight recorder for AI sessions React Authentication With JWT, Zustand, and Axios | JavaScript Tools Blog My idempotency library had one job. A dropped connection made it run the payment twice. "half-open" twice is not the same state: the bug that shaped breakwater 1.0 GitHub - evoluteur/evolutility-server-node: Framework for building REST APIs for CRUD with models rather than code (using Node.js, Express, and PostgreSQL). React Router v8 in Action: Lazy Loading and Nested Routes One $ for every environment | Xec My test suite had 100% coverage. Mutation testing still found real bugs. The type-safe data layer for Kysely | Kysera What JavaScript Obfuscation in the AI Era | JavaScript Tools Blog Using Mongoose Studio with Apache Cassandra via Data API GitHub - trekhleb/yesbrainer: 🧠 A council of AI models for the decisions that aren't no-brainers — they answer in parallel, debate to consensus, or get judged to a verdict. Browser-only, open source, bring your own keys (BYOK), no backend. Node.js has plenty of circuit breakers. So why did I build another one? My Redis library said the write succeeded. Redis was down. GitHub - Techthos/gadget: Prebuilt, interactive HTML widgets for MCP Apps in Go — data tables and forms, self-contained in a single binary, host-themed, spec-compliant. GitHub - evoluteur/react-morph-charts: React component for bubble chart, bar chart, and pie chart, with animated morphing transitions between charts, on hover, and on window resize.
GitHub - aboviq/supapower: A sync engine for Supabase and...
2026-09-18 · via Echo JS
Supapower - With Supapower comes great sync abilities

Supapower is a sync engine that keeps a local PGlite database in sync with Supabase, so an application can read and write locally and stay usable while offline. It is inspired by PowerSync.

Status: 0.1.0. Both directions of the sync work; the public API may still change before 1.0.

Documentation

Everything below, except the examples section, is for working with the monorepo. For documentation on the Supapower library see the supapower package's readme.

Packages

Package Description
supapower The main package for Supapower - a PGlite extension that integrates with Supabase and syncs data between them

Examples

Example Description
chat A terminal chat app, showing a two-way sync between Supabase and PGlite

Requirements

  • Bun 1.4 or later, used as package manager, test runner and script runner
  • Node.js 22 or later or a modern browser for consumers of the published packages

Getting started

bun install
bun run check

bun run check runs the same four steps as continuous integration: lint, format check, typecheck and tests.

Scripts

Script What it does
bun run build Compiles every package to dist with the TypeScript compiler
bun run typecheck Typechecks every package, tests included
bun test Runs the test suite with the Bun test runner
bun run test:coverage Runs the test suite and reports coverage
bun run lint Lints with Oxlint
bun run lint:fix Lints and applies the fixes Oxlint can make safely
bun run format Formats the repository with Oxfmt
bun run format:check Fails when a file is not formatted
bun run changeset Describes a change so it can be released
bun run clean Removes build output

Toolchain

Everything is ESM and TypeScript. There is no CommonJS output and no bundler in the build.

  • Bun for dependency installation, workspaces, scripts and tests
  • TypeScript 7 for typechecking and for emitting JavaScript and declarations
  • Oxlint and Oxfmt for linting and formatting
  • Husky and lint-staged to lint and format staged files on every commit
  • Changesets for versioning and publishing

License

Apache-2.0, Copyright 2026 Aboviq AB.