24 repositorios
Mechanisms for maintaining coherence between remote server state and local client state caches.
Distinct from Remote Data Synchronization: Shortlist covers SRE backups, filesystem sync, or specific product data, not general client-server state harmony.
Explore 24 awesome GitHub repositories matching data & databases · Client-Server State Synchronization. Refine with filters or upvote what's useful.
Trilium is a hierarchical personal knowledge base and digital garden tool designed to organize information into a tree of linked nodes. It functions as a JavaScript programmable wiki and a self-hosted note server, allowing users to maintain a private database of documents synchronized across multiple devices. The platform distinguishes itself through an embedded scripting engine for automating tasks and a REST API that exposes internal data and actions to external tools. Users can further extend the system by modifying the user interface layout and styling through a custom theme engine. The
Implements mechanisms for maintaining coherence between a remote self-hosted server and local client state caches.
WildfireChat’s im-server is an open-source instant messaging backend that handles message routing, user management, and group chat for private deployments. It provides a self-hosted messaging platform that can run on private infrastructure without third-party cloud dependencies, supporting enterprise messaging with group management, user directories, and external system integration. The server synchronizes messages and state across mobile, desktop, web, and mini-program clients simultaneously, and supports real-time audio/video calls with group conferencing and live streaming. It includes enc
Synchronizes messages and state across mobile, desktop, web, and mini-program clients simultaneously.
Colyseus is a real-time multiplayer game framework for Node.js that provides an authoritative server model, delta-compressed state synchronization, and room-based session orchestration. It is designed to handle the core infrastructure of multiplayer games, including matchmaking, state management, and scalable process distribution across multiple servers. The framework distinguishes itself through its schema-based state definition, which enables automatic serialization and change tracking, combined with a binary WebSocket protocol for low-latency updates. Its matchmaking pipeline routes player
Synchronizes game state across clients using delta compression and authoritative updates.
Om is a frontend state management library and reactive user interface framework that integrates ClojureScript functional programming with the React virtual DOM rendering engine. It provides a bridge to build responsive web interfaces where visual elements automatically update when underlying application data changes. The project centers on a normalized state store that flattens complex data structures into a relational format. This data is accessed through a reader-based querying system, which decouples the user interface from the state by allowing components to declare specific data requirem
Manages the synchronization and coherence between remote server state and local client caches.
KBEngine es un motor de servidor de juegos distribuido e infraestructura backend diseñada para entornos multijugador masivos en línea (MMO). Proporciona una arquitectura multiproceso para manejar una alta concurrencia de jugadores e interacciones en tiempo real dentro de un mundo virtual compartido. El sistema cuenta con un framework de lógica de juego programable que combina un núcleo de alto rendimiento con un lenguaje de scripting de alto nivel. Esto permite modificaciones en el comportamiento del juego a través de un runtime actualizable en caliente que actualiza la lógica sin requerir reinicios del servidor. El motor gestiona el escalado del servidor mediante balanceo de carga dinámico a través de múltiples nodos de hardware y garantiza una visión del mundo consistente a través de la sincronización de estado en tiempo real entre el servidor y los clientes del juego. También incluye mecanismos para la persistencia de datos del juego, como copias de seguridad programadas de entidades e instantáneas del estado del servidor. Las capacidades administrativas incluyen herramientas de depuración del servidor en vivo para monitorear el estado del sistema y gestionar los ciclos de vida del servidor.
Uses authoritative updates and event-based transmission to synchronize game state between the server and clients.
Este proyecto es una aplicación de mensajería instantánea y plataforma de redes sociales. Proporciona un sistema para intercambiar texto, archivos multimedia y llamadas de voz o video en tiempo real, mientras mantiene un espacio digital para que los usuarios gestionen listas de amigos e interactúen dentro de círculos sociales. La plataforma integra sistemas de pago digital para transacciones financieras y regalos monetarios, como sobres rojos, dentro de la interfaz de chat. Incluye además un framework de oficina de negocios móvil diseñado para vincular interacciones en línea con la entrega de servicios físicos y operaciones comerciales profesionales. Las capacidades cubren la gestión de conversaciones grupales, difusión de información pública para actualizaciones de noticias y feeds de actualizaciones sociales. El sistema proporciona además herramientas para el descubrimiento de contactos mediante la sincronización de la libreta de direcciones e interfaces de interacción especializadas para dominios que incluyen viajes, comida, medicina y juegos.
Implements mechanisms to keep local message status and read markers synchronized with the server after network reconnects.
Este proyecto es un recurso de aprendizaje interactivo y tutorial para implementar el cliente Apollo GraphQL. Proporciona una experiencia instructiva guiada para enseñar la gestión de datos en el frontend, centrándose específicamente en cómo conectar aplicaciones web a fuentes de datos GraphQL. La plataforma utiliza una ruta secuenciada de lecciones prácticas y recorridos de código interactivos. Estos módulos combinan texto instructivo con bloques de código ejecutables para demostrar el comportamiento de la API en tiempo real y la integración de GraphQL en frameworks de frontend. El plan de estudios cubre el uso de consultas declarativas y la obtención de datos basada en esquemas para gestionar datos remotos. También incluye instrucciones sobre la utilización de almacenamiento en caché normalizado para la gestión del estado del lado del cliente y la sincronización.
Teaches mechanisms for maintaining coherence between remote GraphQL server state and local client state caches.
TinyBase es un almacén de datos reactivo y base de datos relacional en memoria diseñada para la persistencia de estado del lado del cliente. Sirve como un motor de sincronización local-first que fusiona estados distribuidos utilizando tipos de datos replicados libres de conflictos (CRDT) y relojes lógicos para asegurar la convergencia determinista de los datos. El proyecto cuenta con una librería de validación de esquemas que convierte definiciones externas de herramientas como Zod, Yup y TypeBox en definiciones de almacén con seguridad de tipos. Proporciona una infraestructura para la edición colaborativa en tiempo real, utilizando la sincronización con Automerge, Yjs y PartyKit para mantener un estado consistente entre múltiples clientes y servidores. La superficie de capacidad incluye modelado de datos relacionales con tablas y claves foráneas, consultas e indexación tipo SQL y transacciones atómicas para mutaciones agrupadas. Admite una amplia gama de adaptadores de persistencia, incluyendo almacenamiento en navegador, SQLite y Cloudflare Durable Objects. El sistema también proporciona enlace de estado bidireccional y componentes declarativos para la integración con React, SolidJS y Svelte.
Synchronizes local client state with a remote PartyKit server to maintain coherence across distributed environments.
Este proyecto es una plantilla de shooter en primera persona para Unity que implementa jugabilidad en red, sistemas de armas y desplazamiento del jugador. Funciona como un sistema multijugador diseñado para sincronizar movimientos y acciones entre un servidor y clientes a través de una capa de transporte de red. El proyecto sirve como ejemplo de renderizado de juegos de alta fidelidad utilizando el High Definition Render Pipeline para ofrecer contenido de autor y una calidad visual avanzada. También demuestra el uso de un sistema de entidades y componentes (ECS) para organizar los datos y la lógica del juego para un rendimiento de procesamiento y ejecución optimizado. La implementación cubre la sincronización de estado en tiempo real y la gestión de activos del juego mediante la compilación de bundles de activos y la generación de ejecutables independientes.
Synchronizes player movements and actions between the authoritative server and connected clients to maintain consistency.
Turbulenz Engine es un motor de juegos multiplataforma y framework HTML5 diseñado para renderizar gráficos y simular física en entornos de escritorio, móviles y web. Funciona como un motor de gráficos WebGL y un motor de física basado en web, proporcionando las herramientas necesarias para construir juegos 2D y 3D que se ejecutan dentro de los navegadores. El proyecto incluye un framework multijugador en tiempo real que sincroniza los estados del juego y las interacciones de los jugadores entre múltiples usuarios a través de la comunicación del lado del servidor. Esto permite la coordinación de acciones tanto en tiempo real como por turnos asincrónicos para mantener un estado compartido consistente. El motor cubre una amplia gama de capacidades, incluyendo renderizado de gráficos basado en sombreadores (shaders), simulación de colisiones y el procesamiento de la entrada del usuario desde teclados, ratones, pantallas táctiles y gamepads. También gestiona activos multimedia mediante la carga asincrónica de modelos 3D, texturas y reproducción de audio-video. El framework está organizado en componentes modulares para facilitar la integración de varios sistemas de juego y la distribución de contenido en diferentes tipos de dispositivos.
Coordinates multiplayer interactions by syncing real-time actions and game states via authoritative server updates.
ShareJS es una base de datos de documentos colaborativos y motor de sincronización diseñado para la gestión de estado compartido en tiempo real. Proporciona un motor de sincronización de transformación operativa para permitir la edición simultánea de datos de texto plano y JSON, y una API de sincronización RESTful para gestionar estados de documentos a través de HTTP. El sistema cuenta con una capa de sincronización de datos offline-first que pone en cola las modificaciones locales mientras está desconectado y envía automáticamente las ediciones al volver a conectarse. También incluye una capa de control de acceso de middleware que intercepta las solicitudes de la base de datos para aplicar políticas de seguridad y realizar reescritura de solicitudes. La plataforma cubre una amplia gama de capacidades, incluyendo suscripciones a consultas en vivo, notificaciones de cambios en tiempo real y sincronización de contenido concurrente. Estos componentes permiten la creación de feeds de datos donde los clientes son notificados instantáneamente cuando se actualizan los documentos del backend que coinciden con consultas específicas.
Maintains coherence between remote server state and local client state using a real-time synchronization engine.
Effector is a reactive state management library designed for building complex, event-driven applications. It functions as a data flow engine that models application logic as a directed acyclic graph, ensuring that state updates propagate automatically through interconnected nodes. By utilizing atomic state updates and declarative unit composition, the library maintains data consistency and provides a predictable execution model for managing application state. The project distinguishes itself through its framework-agnostic architecture, which decouples business logic from user interface implem
Serializes server-side state and hydrates it on the client to maintain continuity during initial page rendering.
El motor de juego GoldSrc es un framework de juegos 3D y motor de disparos en primera persona diseñado para construir y ejecutar software interactivo. Funciona como un framework de juego modificable, proporcionando un sistema para crear reglas de juego personalizadas y contenido a través de código del lado del cliente y bibliotecas compartidas. El proyecto incluye un SDK de motor de juego y herramientas de desarrollo para compilar lógica de juego personalizada en bibliotecas de enlace dinámico. Esta estructura modular permite el desarrollo y la distribución de modificaciones de juegos en plataformas Windows y Linux.
Provides game state synchronization using compressed snapshots and delta updates between host and client.
This project is a cross-platform mobile project template and TypeScript boilerplate designed for bootstrapping React Native applications using the Expo ecosystem. It provides a pre-configured architecture with a standardized folder structure to accelerate initial development. The template distinguishes itself through a feature-based project architecture and a comprehensive automation suite. It integrates file-based routing for navigation, a utility-first mobile UI kit for styling, and a server state management layer for fetching and caching remote API data. The setup includes a mobile CI/CD p
Manages asynchronous data requests and synchronization between the server and client using specialized caching hooks.
FiveM es un framework de modificación multijugador y herramienta de modding para motores de juegos. Sirve como plataforma para crear y alojar modificaciones impulsadas por la comunidad para motores de juegos de mundo abierto, funcionando específicamente como un framework para Grand Theft Auto V para habilitar servidores personalizados y modos de juego multijugador. El proyecto proporciona un host de servidor de juego dedicado para gestionar el tráfico de red y estados de juego sincronizados en entornos modificados. Sus capacidades se extienden al modding de Red Dead Redemption 2, permitiendo la extensión de mecánicas de juego y la adición de contenido personalizado. El framework admite la inyección de lógica de juego personalizada y el alojamiento de sesiones multijugador dedicadas. Permite la modificación del comportamiento base del juego y la implementación de nuevas mecánicas interactivas.
Provides authoritative servers that synchronize game state across clients using a custom network protocol.
Ambient is a cross-platform multiplayer game engine and runtime environment developed in Rust. It provides a system for building and deploying high-performance games that run across web browsers and desktop platforms using WebAssembly and WebGPU. The project features a networked database that automatically replicates real-time state and components between servers and players. It utilizes WebAssembly sandboxes to isolate game logic, which prevents individual script crashes and allows for the secure execution of untrusted code. The framework includes a graphics system for high-fidelity 3D visu
Implements a networked database server that synchronizes game state using authoritative updates and replication.
Duelyst is a turn-based strategy game engine and multiplayer framework designed for collectible card games. It provides a dedicated architecture for managing tactical combat and card-driven interactions across both web and desktop environments. The platform distinguishes itself through a self-hosted infrastructure that utilizes containerized environments to deploy private game sessions. This approach grants players full access to game content and ensures consistent deployment across local and remote systems. The engine also features a data-driven localization system that separates game text i
Maintains consistent game state across clients by broadcasting authoritative turn-based actions from a central server.
This project is a web development curriculum providing a structured set of instructional materials and guided exercises for learning programming languages and frameworks. It functions as a technical training resource that hosts programming learning paths, including the creation of to-do applications, message boards, and browser games. The project focuses on making programming education accessible through localized educational content served in multiple languages. It also provides dedicated workshop teacher resources, including training decks, cheat sheets, and presentation templates to assist
Provides scripts to maintain coherence between local client state and remote server data.
This project is a client-side data management library and query orchestrator designed to synchronize remote server state with local client state. It functions as a type-safe state manager and cache orchestrator that coordinates data loading across diverse backends, including REST, GraphQL, and WebSockets. The system distinguishes itself through a durable workflow engine for executing asynchronous functions with persisted state and deterministic replay. It also provides a standardized AI integration adapter to connect large language models to application data, supporting real-time response str
Keeps local state in harmony with server data by updating stale information when state changes.
PiliPalaX is a video streaming mobile client designed for discovering and playing video content, including anime and live streams. It functions as a media content browser and a social media video platform, integrating video playback with community engagement features. The application includes a personalized video player with hardware acceleration and gesture-based controls for adjusting volume and brightness. It also incorporates privacy-focused tools, such as incognito browsing modes and user-blocking capabilities to control content visibility. The system covers broad capability areas inclu
Implements synchronization between local playback history and the remote server state.