livestorejs/livestore

LiveStore is a next-generation state management framework based on reactive SQLite and built-in sync engine.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 7 minutes ago
Added to GitGenius on September 18th, 2026
Created on September 21st, 2023
Open Issues & Pull Requests: 348 (+0)
GitHub issues: Enabled
Number of forks: 146
Total Stargazers: 3,713 (+0)
Total Subscribers: 39 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 2.6 days
Mean response time: 110.5 days
90th percentile: 455.7 days
Tracked items: 439

Most active contributors

Sign in to see contributor activity.

How this project is maintained

Roughly one issue in three opened in the past year never receives a reply. Only 20% of open issues come from outside the core team — the tracker reads mainly as internal planning. Work labelled "type:refactor" is answered fastest, typically in under an hour, while "syncing" waits about 9 days. 12% of tracked open issues have had no activity in three months. Only 49% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 291
New in 7 days: 2
Closed in 7 days: 0
Avg open age: 381 days
Stale 30+ days: 280
Stale 90+ days: 98

Recent activity

Opened in 7 days: 1
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 1

Top labels

  • type:bug (124)
  • type:feature (68)
  • syncing (65)
  • state:needs-research (59)
  • help wanted (48)
  • adapter:web (47)
  • area:effect (38)
  • testing (36)

Detailed Description

LiveStore is a state management framework that combines reactive SQLite with a built-in sync engine for client-centric data layers.

LiveStore addresses the problem of managing application state across offline-first, multi-client environments by embedding SQLite as a reactive query layer and using event sourcing to synchronize changes. When data changes occur, they are committed to the local store, applied instantly to queries, and persisted as change events that sync across clients and browser tabs. A materializer layer applies these events to the database, ensuring query results update reactively on the next render. The sync backend then propagates changes to all connected clients, enabling true offline-first workflows with custom merge conflict resolution.

The tool suits applications requiring offline functionality, real-time collaboration, or complex local data management. It provides adapters for web, mobile, server, edge, and desktop platforms, with getting-started guides for React, Vue, Expo, and Node environments. It replaces traditional state management libraries like Redux or MobX by offering a full data layer built on SQLite rather than in-memory stores. The framework supports syncing with provided backends or custom implementations, and includes a query builder alongside raw SQL support for flexible data modeling.

The project shows consistent development activity with regular commits across multiple areas of the codebase. Work spans core functionality, documentation, and platform-specific adapters, indicating sustained effort to maintain and expand the framework. The maintainers actively address issues and merge contributions, demonstrating ongoing engagement with the project's evolution.