30 open-source projects similar to hubspot/offline, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Offline alternative.
Build Offline-First Apps for Web and React Native
Moleculer is a Node.js microservices framework designed for building distributed systems. It functions as a distributed service broker, task orchestrator, and service mesh framework, enabling a decentralized architecture with built-in service discovery and load balancing. The project differentiates itself through a pluggable transport layer supporting protocols such as NATS, Redis, TCP, and Kafka, as well as a dedicated microservices API gateway that maps external HTTP and WebSocket requests to internal service actions. It includes built-in fault tolerance mechanisms, including circuit breake
PouchDB is a JavaScript NoSQL document database that runs directly in the browser. It serves as an offline-first data store that allows applications to save state and user data locally using persistent storage. The database is compatible with CouchDB, implementing its API to enable synchronization between browser environments and remote servers. This allows for cross-device data syncing and the development of local-first software that operates without a constant internet connection. The project covers data storage and synchronization capabilities, including the ability to migrate database sc
This project is an asynchronous key-value store designed for client-side data persistence. It provides a unified interface that allows applications to save and retrieve complex data types, including binary objects, while maintaining responsiveness through non-blocking operations. By enabling offline-first functionality, it ensures that data remains accessible even when a network connection is unavailable. The library distinguishes itself through a driver-based abstraction layer that automatically detects the most efficient storage mechanism available in the current browser or mobile environme
UpUp is a service worker framework and progressive web app tool designed to provide websites with offline capabilities. It functions as a browser cache manager that enables offline website availability by utilizing service workers and the cache API. The project manages the offline workflow through static asset pre-caching and version-based cache busting to ensure stored resources remain current. It also includes offline fallback management to define specific pages or content that display to users when a network connection is unavailable and the requested resource is not cached. Additional ca
Livestore is a reactive state management framework that utilizes a local SQLite database to store and synchronize application data. It provides an event-sourced state store that processes typed events through materializer functions to derive and persist application state. The framework implements offline-first data synchronization using a push-pull engine and append-only event logs to maintain consistency between clients and servers. It includes a real-time presence system for tracking user activity and shared session status across connected clients. The system covers a broad capability surf
This is a foundational project structure for building scalable web applications using React. It provides a standardized directory structure and build tools to accelerate the bootstrapping of new projects, featuring a Redux architecture for predictable state management through unidirectional data flow and an immutable store. The project is distinguished by a command-line interface for generating standardized components, containers, and routes from predefined templates. It implements an offline-first framework using service workers to enable progressive web app functionality, alongside a compon
Hoodie is a data synchronization framework and offline-first JavaScript backend designed to keep client-side data stores in sync with a remote backend. It provides a local-first persistence layer that allows applications to remain functional while offline by abstracting the client-side database. The system features a NoSQL backend interface that enables interaction with remote data stores without requiring custom server-side boilerplate code. This is supported by a modular driver system of pluggable backend adapters that connect the synchronization layer to various remote database providers.
This project is a pre-configured project foundation for building scalable web applications. It serves as a React application boilerplate and component scaffold designed to provide a scalable architecture and a foundation for long-term growth. The setup is characterized by an offline-first web framework that maintains application availability without an active network connection. It includes an internationalized UI foundation with integrated translation tooling and a modular CSS-in-JS setup for scoped, component-level styling. The boilerplate covers broader capability areas including automate
Gun is a decentralized graph database and synchronization engine designed for real-time, peer-to-peer data management. It functions as a JavaScript library that enables applications to maintain consistent state across distributed nodes without relying on a central server. By utilizing conflict-free replicated data types and a gossip protocol, the system ensures that data updates propagate across the network and reconcile automatically. The project distinguishes itself through a focus on decentralized identity and security, utilizing public-key infrastructure to authenticate users and sign dat
go-socket.io is a Go implementation of the Socket.IO protocol used to build real-time, bidirectional, and event-driven communication between servers and clients. It functions as a communication framework that manages persistent connections and maps incoming network packets to specific handler functions to execute application logic. The library enables horizontal scaling of real-time connections through a distributed pub/sub adapter, which synchronizes events across multiple server instances using an external data store. It ensures reliability across different network environments by automatic
Evio is a high-performance networking library for Go that provides a non-blocking socket framework. It utilizes an event loop to process TCP, UDP, and Unix domain socket traffic through a low-level asynchronous protocol interface. The project functions as a multi-core network load balancer, distributing connections across multiple CPU cores using round-robin or least-connections strategies. It supports socket reuse, allowing multiple sockets on a single host to bind to the same port. The library covers a broad range of socket management and packet processing capabilities, including multi-pro
🌳 Tiny & elegant JavaScript HTTP client based on the Fetch API
Resty is a high-level HTTP client library for Go designed for consuming REST services. It provides a streamlined interface for executing network requests, managing server-sent event streams, and automatically mapping JSON and XML responses into data structures. The library includes built-in mechanisms for service resilience and traffic management, such as circuit breakers to prevent cascading failures, token-bucket rate limiting, and automated request retries with exponential backoff. It also features client-side load balancing to distribute outgoing traffic across multiple base URLs and requ
The Blackbox Exporter is a Prometheus-compatible probe that checks the availability and response correctness of external services over HTTP, HTTPS, DNS, TCP, ICMP, and gRPC. It exposes probe results as Prometheus metrics, including a probe_success indicator for each endpoint checked, making it a dedicated tool for blackbox monitoring of network services. The exporter uses a probe-module configuration system where reusable settings such as protocol, method, and IP version are defined as named YAML modules. These modules are assigned to target groups through Prometheus relabeling rules, which m
urllib3 is a Python HTTP client library used to send network requests and receive responses. It provides core components for managing HTTP connection pools, routing traffic through proxies, validating TLS certificates, and executing automatic request retries. The library focuses on network reliability and efficiency by maintaining a system that reuses established connections to multiple hosts to reduce latency. It ensures secure communication through client-side certificate verification and handles transient network errors using policy-based retry logic. The project covers broad networking c
go-grpc-middleware is a gRPC middleware framework for Go designed to handle cross-cutting concerns, reliability, and observability. It provides a collection of interceptors that can be used to modify inbound and outbound calls to enforce system-wide policies. The framework distinguishes itself through specialized toolkits for service reliability, including automatic retry logic for failed client calls and panic recovery mechanisms that translate runtime crashes into standard error responses. It also features an observability suite for collecting performance metrics and recording request activ
Netpoll is an event-driven network framework and non-blocking I/O library designed to manage concurrent TCP and Unix domain socket connections. It utilizes a non-blocking event loop to monitor file descriptors and trigger callbacks for read and write events, serving as a high-performance socket manager and TCP network poller. The framework optimizes throughput across CPU cores by distributing incoming network connections across multiple pollers. It implements zero-copy networking primitives, using linked buffers and specialized memory management to read and write data while minimizing memory
Linkerd is a Kubernetes service mesh that manages network traffic between microservices. It functions as a transparent networking proxy, layer 7 traffic manager, and mutual TLS security layer, providing observability and reliability for service-to-service communication without requiring changes to application code. The project distinguishes itself through a sidecar-proxy architecture that intercepts TCP and application-level traffic to provide automatic mutual TLS encryption and identity verification. It enables cross-cluster service networking to link multiple clusters and implements cloud-n
CKEditor 4 is a browser-based WYSIWYG rich text editor that enables users to create and format HTML content directly in the browser. It operates on a plugin-based architecture with a configurable toolbar system, DOM-based content editing, and an event-driven lifecycle, all delivered through a CDN-based distribution model. The editor supports skin-based theming and includes a legacy plugin compatibility layer for backward compatibility. The editor distinguishes itself as a cross-platform framework that integrates natively with Angular, React, Vue, Electron, Android, and iOS environments. It of
The Azure SDK for .NET is a collection of client and management libraries that enable .NET applications to interact with cloud services through a consistent, well-defined programming model. It provides a unified interface for authenticating, configuring HTTP pipelines, and calling service methods either synchronously or asynchronously, with support for pagination, long-running operations, and structured error handling. The SDK distinguishes itself through comprehensive authentication options, including connection strings, OAuth token credentials, managed identity, service principals, and deve
This project is a client-side software development kit for iOS and macOS applications that integrates mobile software with a cloud-based backend. It functions as a mobile backend as a service interface, enabling developers to manage user authentication, cloud data persistence, and synchronization without the need to maintain server-side infrastructure. The framework is designed for offline-first development, utilizing a local datastore to cache application state and ensure functionality during periods of network disconnection. It features an automated synchronization engine that queues pendin
Doctrine Event Manager is a PHP library that implements a publish-subscribe pattern for decoupled application communication. It provides a simple event bus that dispatches named events to registered listeners, enabling components to communicate without direct method calls and promoting loose coupling and extensibility in PHP projects. The library manages listener callbacks in a central registry keyed by exact event name strings for fast lookup, and invokes listeners in priority sequence for controlled reaction order during event dispatch. It maintains no internal state between dispatches, rel
SocketRocket is an Objective-C WebSocket client library designed to establish bidirectional real-time communication channels between an application and a server. It provides a networking layer for real-time data streaming, utilizing a heartbeat monitor to maintain the stability of active network streams. The library is built to operate across restricted networks by routing traffic through HTTP proxies. It secures data transmission using TLS encryption and SSL certificate pinning to prevent unauthorized interception of network traffic. Its underlying capabilities include low-level TCP socket
react-fns is a suite of declarative components and utilities designed to wrap imperative browser APIs for use in React applications. It provides a set of components and higher-order components that integrate browser environment data, device sensors, network status, and native application launchers into a reactive user interface. The library enables declarative access to hardware sensors for tracking accelerometer, gyroscope, and orientation data in real time. It also includes native app launchers that trigger the default system mail and SMS applications using pre-filled links. Additional cap
ShareJS is a collaborative document database and synchronization engine designed for real-time shared state management. It provides an operational transform sync engine to enable simultaneous editing of plain-text and JSON data, and a RESTful synchronization API for managing document states via HTTP. The system features an offline-first data sync layer that queues local modifications while disconnected and automatically pushes edits upon reconnection. It also includes a middleware access control layer that intercepts database requests to enforce security policies and perform request rewriting
Preswald is a WebAssembly data application framework used to build interactive data apps that run entirely in the browser using Python. It provides a browser-based data stack, including SQL and Python execution, that operates offline without the need for a backend server. The framework includes a static data app bundler to package data workflows and visualizations into single, shareable files. These self-contained applications enable serverless data visualization and portable data workflow bundling for distribution. The system utilizes a reactive data dashboard interface that updates specifi
CAP is a .NET distributed transaction framework and event bus designed to manage asynchronous communication in microservices. It implements the outbox pattern to ensure eventual consistency and reliable message delivery by persisting messages in local database tables until transactions commit. The framework includes a distributed message monitor and web dashboard for tracking the status of sent and received messages. It provides tools for event traffic visualization, distributed request tracing, and the ability to manually trigger retries for failed delivery attempts. The system supports var
Workbox is a modular library and toolkit designed for managing service workers in progressive web applications. It provides a comprehensive framework for handling asset caching, request routing, and background script lifecycle management, enabling developers to build web applications that function reliably offline and load efficiently. The project distinguishes itself through a declarative routing engine and a plugin-based architecture that allows for the injection of custom logic into the request and response processing pipeline. It supports advanced caching patterns, such as cache-first or