Quadstore

What Quadstore is
Quadstore is a free, open-source RDF graph database and triplestore for JavaScript runtimes. Written in TypeScript and backed by LevelDB, it implements RDF/JS Sink, Source, and Store interfaces for interoperability with RDF libraries. It supports queries across named graphs and range queries through its matching API; numeric literal ranges compare numerically for listed datatypes. Quadstore accepts storage backends implementing AbstractLevel, including classic-level, memory-level, and browser-level. The browser-level option stores data persistently in a browser through IndexedDB. SPARQL queries are available through quadstore-comunica, a separate Comunica distribution and configuration. RDF parsing and serialization are not included, so compatible libraries such as n3 or @rdfjs/formats are needed. Node.js 18.0.0 or later is required, with use also described for Deno, browsers, and Bun. Partial indexes are unsupported, and unsuitable indexes cause query errors.
Who it suits
It suits JavaScript developers building self-hosted RDF applications that need RDF/JS interoperability, named graphs, and configurable Level-compatible storage. Users must provide parsing and serialization libraries.
What it does well
- Open-source MIT license
- RDF/JS Sink, Source, and Store interfaces
- Named-graph queries and range matching
- Persistent browser storage through IndexedDB
- Works with Node.js, Deno, browsers, and Bun
What to know first
- Node.js 18.0.0 or later is required
- RDF parsing and serialization are not included
- Partial indexes are unsupported
- Unsuitable indexes cause query errors
Limits
Quadstore does not include RDF parsing or serialization, so those tasks require compatible libraries. Partial indexes are unsupported, and a query without a suitable configured index throws an error.
Getting started
- Open the Quadstore project website
- Use Node.js 18.0.0 or later, or one of the described Deno, browser, or Bun runtimes
- Select an AbstractLevel-compatible storage backend such as classic-level, memory-level, or browser-level
- Add an RDF/JS-compatible parser or serializer such as n3 or @rdfjs/formats
- Use quadstore-comunica when SPARQL 1.1 queries are needed
Verdict
Quadstore provides a TypeScript RDF store with flexible Level-compatible backends and RDF/JS integration. Its separate SPARQL package, missing parsers, and index requirements shape how developers must assemble and configure a deployment.
Questions
Is Quadstore free?
Yes. It is free, open-source software released under the MIT license.
Which runtimes does Quadstore support?
The README requires Node.js 18.0.0 or later and describes use with Deno, browsers, and Bun.
Does it support SPARQL?
SPARQL 1.1 queries are supported through quadstore-comunica, a separate tailored Comunica distribution and configuration.
Does Quadstore parse RDF files?
No. RDF parsing and serialization are supplied through compatible libraries such as n3 or @rdfjs/formats.
Can it store data in a browser?
Yes. The browser-level backend provides persistent browser-side storage through IndexedDB.
Facts from Quadstore's own pages
- Blank-node handling
- Optional scopes replace blank-node labels with randomly generated labels to prevent collisions when importing separate quad sets. · github.com, 9 Oct 2026
- Blank node scopes
- Scope instances can replace blank node labels to prevent collisions when importing separate sets of quads. · github.com, 9 Oct 2026
- Browser storage
- The browser-level backend provides persistent browser-side storage through IndexedDB. · github.com, 9 Oct 2026
- Index limitation
- Partial indexes are not supported, and a query without a suitable configured index throws an error. · github.com, 9 Oct 2026
- License
- The repository README identifies the license as MIT. · github.com, 9 Oct 2026
- Named graphs
- Quadstore supports querying across named graphs. · github.com, 9 Oct 2026
- Parsing limitation
- Quadstore does not include RDF parsing or serialization, so users must supply compatible libraries for those tasks. · github.com, 9 Oct 2026
- Product
- Quadstore is a LevelDB-backed RDF graph database and triplestore for JavaScript runtimes, written in TypeScript. · github.com, 9 Oct 2026
- Query features
- Its matching API supports range queries, and numeric literal ranges compare numerical values for listed numeric datatypes. · github.com, 9 Oct 2026
- RDF integrations
- It works with RDF/JS-compatible parsers and serializers, with n3 and @rdfjs/formats given as examples. · github.com, 9 Oct 2026
- RDF/JS
- It implements the RDF/JS Sink, Source, and Store interfaces. · github.com, 9 Oct 2026
- RDF/JS support
- It implements the RDF/JS Sink, Source, and Store interfaces for interoperability with RDF libraries. · github.com, 9 Oct 2026
- RDF parsing
- RDF parsing and serialization are not included; the README says the project leaves these to compatible libraries such as n3 and @rdfjs/formats. · github.com, 9 Oct 2026
- Requirements
- The README states that Node.js version 18.0.0 or later is required. · github.com, 9 Oct 2026
- Runtime requirement
- The README says Node.js 18.0.0 or later is required and also describes use with Deno, browsers, and Bun. · github.com, 9 Oct 2026
- SPARQL
- SPARQL queries are supported through quadstore-comunica, a separate tailored distribution and configuration of Comunica. · github.com, 9 Oct 2026
- Status
- The project describes itself as active and under development. · github.com, 9 Oct 2026
- Status and license
- The project describes itself as active and under development and identifies its license as MIT. · github.com, 9 Oct 2026
- Storage backends
- It accepts any storage backend implementing the AbstractLevel interface; the README highlights classic-level, memory-level, and browser-level. · github.com, 9 Oct 2026
Where Quadstore stands on Freedom251
- RDF Databases#20 of 26