Do

DortDB, a TS library for mixed-lang queries on JavaScript structures

Hacker News

DortDB, a TS library for mixed-lang queries on JavaScript structures

Hello HN, I made a TypeScript library for querying in-memory JS data. Originally, the goal was to have a more modular and lightweight alternative to AlaSQL, but then I was asked to include support for SQL/XML, which I personally find way too verbose. So I got to thinking, remembered Virtuoso's combined SQL and SPARQL queries and extrapolated from there. The resulting engine consists of a shared core that provides the optimizer, query infrastructure etc., and separate languages that can be added as plugins. The way this is implemented is that the languages are translated into a common algebra. Thanks to that, you can mix multiple languages in a single query - imagine you need to process some tabular data, but for each row you want to extract information from a deep tree-like structure. Well, you can write an outer SQL query and put in an XQuery subquery and it just works. The algebra itself is designed to be extensible - I don't presume to have covered everything any query language might need (but there is a language implemented for every major data model - SQL, XQuery and a Cypher-like language (licensing)). For example, XQuery includes two special algebra operators of its own, without needing to modify the core. There is a link to a demo on the GitHub README, where you can play with query plans, or execute queries on some sample data. There is also a link to my diploma thesis about this project, if you're interested in that. The whole thing was presented as a demo at VLDB last year. This is a result of more than 2 years of work, and I'm at the point where I think other people might find it useful too - mainly because I was able to make docs I am happy with. The docs were created with the help of a LLM, but I spent weeks on that, so hopefully they read good. The code itself was written by hand, with the exception of the initial batch of regression tests.

Share card

Actual performance

3points
Did not reach leaderboard

Launch Intel predictions

Analyze your own launch →
Product HuntOn track for Day 1 leaderboard · Strong signals: model, single, code · Missing: mac, agents, macos
88%88% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
best fitHighest predicted score across all platforms for this description.
Indie HackersFits the IH revenue-focused audience · Strong signals: created, para · Missing: supports, reddit linkedin, podcasting
86%86% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
Hacker NewsStrong engagement from HN community · Strong signals: ide, io · Missing: https docs, excited, just released
58%58% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
TrustMRRLess likely to generate early MRR · Strong signals: personal, way, para · Missing: mobile apps, ios, entrepreneurs
44%44% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
AppSumoMay struggle as an AppSumo deal · Missing: plus, platform, intuitive
24%24% predicted probability of success on AppSumo, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Missing: arr, mrr, revenue
15%15% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Missing: web3, chat, crypto
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Incorrect prediction on native model

Similar products

JA
JAQT – JavaScript Queries and Transformations73%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

JAQT – JavaScript Queries and Transformations

Hacker News100
Im
Immutable JavaScript Data Structures63%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Immutable JavaScript Data Structures

Hacker News3
Al
Algorithms and Data Structures Implemented in JavaScript63%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Algorithms and Data Structures Implemented in JavaScript

Hacker News34
Da
Data Structures and Algorithms in JavaScript59%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Data Structures and Algorithms in JavaScript

Hacker News369
Da
Data Structures and Algorithms Implementation in Ruby and JavaScript54%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Data Structures and Algorithms Implementation in Ruby and JavaScript

Hacker News2
Ds
Dslib, an open source library of data structures in JavaScript71%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Dslib, an open source library of data structures in JavaScript

Hacker News13
A
A JavaScript Kline library55%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

A JavaScript Kline library

Hacker News1
Li
Library for tuples in JavaScript59%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Library for tuples in JavaScript

Hacker News4
A
A Javascript library to overcomplicate Five60%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

A Javascript library to overcomplicate Five

Hacker News69
Ta
Talker, a JavaScript Library to Wrap PostMessage with Promises50%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Talker, a JavaScript Library to Wrap PostMessage with Promises

Hacker News2