awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
sql-js avatar

sql-js/sql.js

0
View on GitHub↗
sql.js.org↗

Sql.js

sql.js is a serverless, in-memory SQL database engine that ports SQLite to WebAssembly for use within a web browser. It provides a JavaScript interface to initialize relational databases, execute SQL queries, and manage structured data without requiring a backend server.

The project enables the import and export of database states using typed arrays, allowing in-memory data to be persisted as files. It supports high-precision integer retrieval via BigInt and utilizes prepared statements to increase execution speed and security.

The engine includes capabilities for client-side data management and relational querying, with the ability to offload intensive database operations to background worker threads to maintain user interface responsiveness.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • In-Browser Database Engines - Provides a relational database engine compiled to WebAssembly for execution entirely within the web browser.
  • WebAssembly Engines - Provides a full relational database engine compiled to WebAssembly for execution entirely within a web browser.
  • Browser Databases - Implements a full relational database for storing and querying structured data entirely within the web browser.
  • Client-Side Data Processing - Facilitates the complete pipeline of importing, querying, and exporting relational data directly in the browser.
  • In-Memory Databases - Implements a serverless SQL database that stores and queries relational data within a virtual memory buffer.
  • Wasm-Based Interfaces - Provides a programmatic JavaScript interface to initialize and query the underlying WebAssembly-based SQLite engine.
  • Relational Database Management Systems - Provides a robust relational database management system for storing structured information in tables within the browser.
  • Typed Arrays - Uses JavaScript typed arrays to map the database's linear memory and internal state for efficient access.
  • Serverless SQLite Managers - Provides a serverless SQLite implementation that manages relational data without requiring a separate database server.
  • SQL Query Execution - Implements the core process of running SQL statements and retrieving structured data results.
  • Client-Side Querying - Enables the execution of SQL statements to read and write data within a standalone in-memory engine.
  • Relational Local Storage - Provides relational local storage using a WebAssembly-ported engine for serverless data management.
  • WebAssembly Glue Code Generators - Provides the necessary JavaScript glue code to interface between the high-level API and the WebAssembly-compiled SQLite engine.
  • Database Export - Allows exporting the current in-memory database state as a binary typed array for local persistence.
  • Database Seeding via Import - Enables loading existing database files into memory via typed arrays to initialize the application state.
  • Prepared Statements - Supports prepared statements to increase query execution speed and protect against SQL injection.
  • Binary Buffer Management - Implements binary buffer management using typed arrays to handle the in-memory database state for import and export.
  • Local Database Persistence - Ensures data persists across browser sessions by saving and loading in-memory database files.
  • Virtual File System Layers - Implements a virtual file system layer to simulate disk operations within the browser's memory.
  • Worker Thread Patterns - Employs worker thread patterns to offload heavy database computations and keep the user interface responsive.
  • Background Processing Workers - Offloads intensive database operations to background worker threads to prevent freezing the main user interface.
  • SQLite Derivates - Listed in the “SQLite Derivates” section of the Awesome Sqlite awesome list.
13,632 stars·1,108 forks·JavaScript·25 views

Star history

Star history chart for sql-js/sql.jsStar history chart for sql-js/sql.js

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Projects sharing features with Sql.js

These projects share indexed features with Sql.js. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • vlcn-io/cr-sqlitevlcn-io avatar

    vlcn-io/cr-sqlite

    3,640View on GitHub↗

    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

    Rustcrdtdatabasesqlite
    View on GitHub↗3,640
  • simolus3/driftsimolus3 avatar

    simolus3/drift

    3,231View on GitHub↗

    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

    Dartdartdart-build-systemflutter
    View on GitHub↗3,231
  • electric-sql/pgliteelectric-sql avatar

    electric-sql/pglite

    14,707View on GitHub↗

    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

    TypeScriptdatabasepostgreswasm
    View on GitHub↗14,707
  • alasql/alasqlA

    AlaSQL/alasql

    7,278View on GitHub↗

    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

    JavaScript
    View on GitHub↗7,278
Compare all 30 related projects→

Frequently asked questions

What does sql-js/sql.js do?

sql.js is a serverless, in-memory SQL database engine that ports SQLite to WebAssembly for use within a web browser. It provides a JavaScript interface to initialize relational databases, execute SQL queries, and manage structured data without requiring a backend server.

What are the main features of sql-js/sql.js?

The main features of sql-js/sql.js are: In-Browser Database Engines, WebAssembly Engines, Browser Databases, Client-Side Data Processing, In-Memory Databases, Wasm-Based Interfaces, Relational Database Management Systems, Typed Arrays.

Which projects share features with sql-js/sql.js?

Projects with overlapping indexed features include: vlcn-io/cr-sqlite — cr-sqlite is a multi-master database replication system that uses conflict-free replicated data types to ensure… simolus3/drift — Drift is a type-safe SQL persistence library and relational mapper that provides a structured way to map database… electric-sql/pglite — Pglite is a client-side relational database engine that runs a full-featured PostgreSQL instance directly within… alasql/alasql — AlaSQL is a JavaScript SQL database engine that allows for the filtering, grouping, and joining of in-memory object… liyupi/sql-mother — sql-mother is a browser-based educational platform for learning SQL syntax through interactive exercises, tutorials,… jlongster/absurd-sql — Absurd-sql is a browser-based SQL database that runs SQLite for query processing and local storage. It provides a…