30 open-source projects similar to sql-js/sql.js, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Sql.js alternative.
cr-sqlite is a multi-master database replication system that uses conflict-free replicated data types to ensure eventual consistency across distributed nodes. It provides the core capabilities for offline-first data synchronization, allowing multiple database instances to merge concurrent updates and reach a consistent state. The project distinguishes itself through a combination of CRDT-based data replication and a WASM-based database engine, enabling full SQL execution and state persistence within web browsers. It supports peer-to-peer replication and cross-tab synchronization, utilizing ca
Drift is a type-safe SQL persistence library and relational mapper that provides a structured way to map database tables to classes and execute SQL queries with build-time validation. It functions as a type-safe query builder and a wrapper for SQLite and PostgreSQL, eliminating manual result set parsing by binding query outputs to native objects. The project distinguishes itself through a build-time code generation system that produces type-safe APIs and validates raw SQL statements against database versions before execution. It features reactive query streaming, which transforms SQL queries
Pglite is a client-side relational database engine that runs a full-featured PostgreSQL instance directly within browser and Node.js environments. By leveraging WebAssembly, it provides a persistent SQL storage solution that enables complex data management and querying without requiring an external database server. The project distinguishes itself through a reactive SQL data layer that automatically synchronizes user interface components with live query results. It manages database operations using worker threads to prevent main-thread blocking and coordinates access across multiple browser t
AlaSQL is a JavaScript SQL database engine that allows for the filtering, grouping, and joining of in-memory object arrays and JSON data. It functions as an in-memory SQL database and client-side data processor, enabling the execution of SQL statements against JavaScript arrays and external data sources in both browser and server environments. The project serves as a universal data query tool capable of performing relational joins across diverse sources, such as merging Google Spreadsheets, SQLite files, and remote APIs into a single result set. It also acts as an IndexedDB SQL wrapper, allow
sql-mother is a browser-based educational platform for learning SQL syntax through interactive exercises, tutorials, and a query playground. It provides a structured environment for mastering the logic and syntax of MySQL, SQLite, and PostgreSQL using a sequence of hands-on challenges. The platform uses a WebAssembly-based database engine to enable local SQL execution and real-time query validation entirely within the browser. This architecture allows for virtual table mocking and state management without the need for a backend server or user accounts. The environment includes a gamified cur
Absurd-sql is a browser-based SQL database that runs SQLite for query processing and local storage. It provides a system for saving relational data locally in the browser to ensure persistence across page refreshes and restarts. The project implements an IndexedDB persistence layer that stores SQLite database blocks within the browser. This approach avoids loading entire database images into memory, enabling the storage of structured relational data locally to maintain functionality during offline use.
SQLite is a serverless relational database engine and C-based library that stores data in a single local disk file. It functions as an embedded SQL database, integrating directly into applications without the need for a separate server process. The engine includes specialized capabilities for full-text search indexing and spatial data querying using R-Tree structures for geographic or geometric coordinate ranges. The system provides broad support for SQL data manipulation, database recovery and repair, and change tracking for synchronizing modifications between databases. It also features a
H2 is a JDBC-compliant relational database management system written in Java. It functions as an embeddable SQL database that can run directly within an application process to remove network latency, or as an in-memory database for high-performance volatile storage. It also includes a web-based console for executing SQL commands and administering schemas. The system is characterized by its flexible deployment modes, including a standalone server mode for remote TCP/IP access and a mixed mode for simultaneous local and remote connectivity. It features a dialect emulation layer and compatibilit
This is a reference implementation library providing a collection of code samples, Transact-SQL scripts, and schemas for SQL Server, Azure SQL, and Azure Synapse. It focuses on providing standardized implementation patterns and reference code for building relational databases and cloud data warehouses. The library distinguishes itself by offering specialized guides and examples for deploying database instances within containerized environments and Azure cloud services. It includes specific reference databases and language extensions for integrating machine learning services and advanced analy
SQL Studio is a web-based database management platform designed to provide a unified interface for interacting with multiple relational database engines and structured file formats. It functions as a comprehensive client that enables users to browse database records, inspect schema metadata, and execute custom queries through a centralized dashboard. The platform distinguishes itself by offering both remote database connectivity and serverless, in-browser analysis of flat files such as Parquet and CSV. It incorporates an intelligent code-aware editor that supports syntax highlighting and cont
This project is a MySQL database driver for Node.js that establishes network connections and executes SQL queries using a native communication protocol. It functions as an asynchronous SQL client, providing a promise-based query interface and support for async/await patterns to manage non-blocking database operations. The library includes a full MySQL protocol implementation, serving as a toolkit for building custom database servers, proxies, or clients. It also operates as a connection pool manager and an injection prevention tool, utilizing prepared statements and parameterized queries to s
AliSQL is a fork of MySQL by Alibaba that extends the relational database management system with enhancements for high performance, scalability, and enterprise-grade availability. It retains the core MySQL identity as a SQL-based database for storing, organizing, and retrieving structured data, while adding optimizations for large-scale transactional and analytical workloads. The project differentiates itself through a set of Alibaba-specific improvements, including a columnar engine for accelerating analytical queries directly on MySQL tables, and a distributed, shared-nothing NDB Cluster en
node-sqlite3 is a relational database client and a set of native bindings that allow Node.js applications to interact with SQLite databases. It functions as a C++ native addon, linking JavaScript to the SQLite C library to manage data stored in local files or in-memory stores. The project includes optional support for SQLCipher, enabling page-level encryption to secure local database files. The driver covers a wide range of database management capabilities, including executing SQL queries with parameter binding, managing connections to database files, and preparing statements for repeated ex
SurrealDB is a multi-model database engine designed to store and query document, graph, relational, and vector data within a single ACID-compliant platform. It functions as an AI-native data store, integrating vector search, graph traversal, and machine learning model execution directly into its query layer. By providing a unified declarative query language, the platform eliminates the need for external middleware to synchronize data across different storage models. The platform distinguishes itself through its ability to manage agent memory and complex workflows natively. It allows developer
This project is a compatibility layer and abstraction library for building native C++ addons for Node.js. It provides a consistent C++ API that allows a single codebase to compile against multiple versions of the V8 JavaScript engine by hiding version-specific differences behind macros and inline functions. The toolkit differentiates itself through specialized wrappers and managers, including a monadic wrapper for handles to avoid explicit null checks, a persistent reference manager for objects that must survive handle scope disposal, and a buffer abstraction API for version-compatible memory
The Cloudflare Workers Rust SDK is a toolchain and framework for building high-performance serverless functions using Rust. It compiles code into WebAssembly modules that execute within a sandboxed host environment at the edge. The project provides a typed remote procedure call system for invoking functions across different worker instances and utilizes procedural macros for mapping these distributed interfaces. It uses trait-based bindings and standardized wrappers to provide type-safe access to platform services and web-standard request and response objects. The SDK covers a broad range of
gif.js is a JavaScript GIF encoder and client-side color quantizer that generates animated GIF files directly within the web browser. It functions as an HTML5 canvas exporter and image processor, allowing for the creation of animated images from web sources without the need for a backend server. The library utilizes web workers to offload heavy image encoding tasks to background threads, which prevents the browser user interface from freezing during the generation process. This architecture enables the tool to act as a web worker image processor for dynamic image generation. The system cover
This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a robust framework for managing application state by synchronizing data across browsers, mobile devices, and server-side runtimes. By treating local storage as the primary source of truth, it enables applications to remain functional without network connectivity, automatically reconciling changes with remote backends once a connection is restored. The database distinguishes itself through a modular architecture that supports cross-environment synchronization and high-performance d
Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data sources. It functions as a data federation platform and massively parallel processing engine, allowing users to execute interactive queries against diverse storage systems without requiring data migration. By mapping remote metadata and structures to a unified relational namespace, it enables seamless cross-platform analysis through a standard SQL interface. The engine distinguishes itself through a pluggable connector architecture and a shared-nothing distributed processing
LibSQL is a high-performance, distributed SQL database engine that extends SQLite to support remote network access, edge computing, and real-time synchronization. It functions as an embedded database library that integrates directly into application processes while providing the infrastructure to maintain consistency across multiple geographic regions. The platform distinguishes itself by enabling database interaction over standard HTTP protocols, allowing applications to query remote data sources in serverless and edge environments without requiring local filesystem access. It includes nativ
Night is a developer community platform designed to facilitate peer-to-peer learning and technical knowledge management. It functions as a collaborative space where users can organize study groups, curate engineering resources, and host technical discussions to support ongoing professional development. The system operates as a relational database application that manages complex interactions between users, learning materials, and collaborative session metadata. It incorporates a role-based access control framework to enforce permissions and restrict administrative actions through token valida
Datasette is a tool for publishing and sharing SQLite databases as public websites. It functions as a data publishing system that provides searchable interfaces and JSON APIs to expose the contents of SQLite files. The project enables both server-side and client-side execution. It can operate as an API server or as a database browser that runs entirely within a web browser using WebAssembly, allowing for serverless database access. The system supports a variety of deployment strategies, including containerized images for cloud hosting and a local development server for testing. It includes c
Sqlectron-gui is a cross-platform database manager and SQL client. It provides a graphical interface for organizing server connections and executing SQL commands across various operating systems. The tool functions as a multi-database query environment, allowing users to connect to and interact with diverse relational database systems from a single interface. The application covers database server administration by saving and organizing connection details for multiple environments. It also includes capabilities for managing database connections and executing SQL queries.
Perspective is a columnar data analytics library and streaming data visualization engine. It provides an interactive data grid component and notebook analytics widgets designed for processing high-volume data and rendering interactive charts and grids. The system utilizes a high-performance query engine to enable real-time data analysis and streaming dataset visualization. It supports the creation of customizable dashboards and reports that update automatically as new data arrives without requiring full dataset reloads. The project covers large-scale dataset analytics through a schema-driven
Pinot is a distributed, columnar analytical database designed for high-concurrency, low-latency query processing. It functions as a real-time OLAP datastore, enabling interactive, user-facing analytics by ingesting and querying massive datasets from both streaming and batch sources. The system architecture relies on a centralized controller for cluster coordination and a distributed segment-based storage model to ensure horizontal scalability. The platform distinguishes itself through a hybrid ingestion pipeline that unifies real-time event streams and historical batch data into a single quer
PostgreSQL is an object-relational database management system designed for the persistent storage and retrieval of structured information. It functions as an ACID-compliant database server, utilizing standard query language protocols to maintain data consistency and reliability across large-scale application datasets. The system distinguishes itself through an extensible architecture that allows for the definition of custom data types, operators, and indexing methods. It employs multi-version concurrency control to enable simultaneous read and write operations without blocking, supported by a
MySQL Server is a relational database management system designed to organize and store structured information. It functions as a comprehensive SQL server platform that provides reliable transactional integrity and high-performance query execution for enterprise data management. The system distinguishes itself through a pluggable storage engine architecture that decouples logical query processing from physical data storage, allowing for specialized handling of diverse workloads. It maintains data consistency and high concurrency through multi-version concurrency control and write-ahead logging
wasm-bindgen is a bindings generator and interop layer designed to map data types and functions across the boundary between WebAssembly and JavaScript. It functions as a foreign function interface that synthesizes the necessary boilerplate to enable bidirectional communication between Rust and the browser runtime. The project generates glue code and wrappers that automate the conversion of complex types, allowing Rust functions to be exported as JavaScript modules and browser APIs to be imported into Rust. It uses procedural macros to define these interfaces and synthesizes bindings based on
Apache DataFusion is an extensible, columnar SQL query engine that runs embedded within a host application without requiring a separate server process. It processes data in columnar batches using Apache Arrow for memory-efficient analytics, and can scale analytic workloads across multiple nodes for parallel execution. The engine supports both SQL and DataFrame queries through a modular, streaming architecture that allows custom operators, data sources, functions, and optimizer rules. The engine distinguishes itself through its modular extension framework, which enables building custom query e
Memgraph is an in-memory, distributed graph database designed for high-performance labeled property graph management. It utilizes a Cypher query engine for declarative data retrieval and manipulation, providing a scalable knowledge graph backend that integrates vector search and graph traversals. The system distinguishes itself as a real-time graph analytics platform, employing native C++ and CUDA implementations to execute complex network analysis and dynamic community detection on streaming data. It provides specialized support for AI integration, including GraphRAG capabilities, the constr