HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
erikgrinaker
toydb
Rust2020–2026
erikgrinaker / toydb

toydb

Distributed SQL database in Rust, written as an educational project

11Distinct people
14Mentions
0Explicit recommenders
7.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Distributed SQL database in Rust, written as an educational project

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year14 dated mentions

Observed mentions: 2020-06-23 15:21:46 UTC to 2026-10-05 17:40:32 UTC.

0123452020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 5 mentions; 5 submissions, 0 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 4 mentions; 1 submissions, 3 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments20232024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC550
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC413
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC202
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC000
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC000
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC211
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC101

What Hacker News says

14 sources
TLDR: didactic DB in python together with a hand's-on DBMS course in Jupyter, WIP since 2024 but no releases Seems like a great idea, worth evaluating and contributing to. Others afaik in C++ and rust - see e.g., - list: https://github.com/pingcap/awesome-database-learning - list: https://dbdb.io/ - CMU: https://github.com/cmu-db/bustub - GA tech: https://github.com/jarulraj/buzzdb - rust/distributed: https://github.com/erikgrinaker/toydb
In ExplainDB: A Database System Built for Understandability
That's not my experience. Over christmas I re wrote a restaurant POS application from laravel to vue/wrangler using bolt + chatgpt. My exact steps: 1) I took my db schema and got chatGPT to convert it to typescript types and stub data. 2) Uploaded these types to bolt and asked it one by one to create vue components to display this data(Catalog screen, Payment Dialogs, Tables page etc) and to use fetcher functions that return stub data. 3) Finally I asked it replace stub data with supabase.rpc calls, and create postgres functions to serve this data. While I had most of the app done in a few days, testing, styling and adding bug fixing took a month. Some minor stuff was done manually by me: Receipt printer integration integration because bolt wasn't good at epson xml or related libraries that time. Finally we released early feb and we recei
Read the rest
ved extremely good feedback from our customers. However now I'm using claude and even higher percentage of code is generated by it now. Our feature velocity is also great. After launch we have added following features in 6m 1) Split Table Payments 2) Payment Terminal Integration 3) Visual Floor plan viewer 4) Mobile POS for waiters without tablet 5) Reports, Dashboard, Import/Export 6) Loyalty programs with many different types of programs 7) Self-service Webshop with realtime group ordering 8) Improved tax handling 9) Multicourse orders("La'suite") 10) Many other smaller features This would be very hard to achieve without AI for most one-person engineering teams. Although tbf not impossible. > The new way: The entire premise of AI coding tools is to automate the thinking, not just the typing. You're supposed to describe a problem and get a solution without understanding the details. That's the labor-saving promise. I think here the OP introduces a strawman since as many people have pointed out, the labour saving happens in automating menial tasks and no one sane should give up "understanding the details". > >I was thinking of all the classic exploratory learning blog posts. Things that sounded fun. Writing a toy database to understand how they work, implementing a small Redis clone. Now that feels stupid. Like I'd be wasting time on details the AI is supposed to handle. On the contrary. Reading ToyDB[1] source code helped me understand MVCC and Isolation levels. That's knowledge that's valuable for a systems architect since at the end LLMs are just fancy word generators. [1] https://github.com/erikgrinaker/toydb
In Ask HN: Has AI stolen the satisfaction from programming?
Kinf of. But it's not really Consistent in the CAP sense, as it only provides snapshot isolation, not linearizability, plus the A in CAP is kind of useless. (CAP is an amazing theoretical milestone nonetheless, just too narrow for real life situations. Basically it's a simple no-go theorem.) In practice even this ToyDB is likely able to serve requests in a degraded state (probably as long as the Raft leader's timer does not expire, and if there's a quorum of nodes they can reelect a leader). And it seems that if a node falls out of sync it will automatically rejoin and try to replay the logs. (As long as they are available of course.) https://github.com/erikgrinaker/toydb/blob/master/docs/archi... https://www.youtube.com/watch?v=hUd_9FENShA https://blog.acolyer.org/2014/11/07/highly-available-transac...
In ToyDB: Distributed SQL Database in Rust

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.