Every page has a live Mongo shell powered by a real query engine running in your
browser. Type db.collection.find(…) or an aggregate([…]) pipeline, drag a
slider, and watch documents flow through each stage. No install, no Atlas, no internet — just you
and a little cafe database called Byte Bites.
Three collections of documents — JSON-like objects that can hold arrays and nested data (that's the whole point of MongoDB). Every example uses them:
{ _id, name, category, price, tags: [...] } — note the
array field tags.
{ _id, name, city, vip, joined, visits } — one customer
(Hana) has never ordered, on purpose.
{ _id, customer_id, date, status, items: [ {product, qty, price} ] }
— an array of sub-documents, perfect for $unwind.
$unwind and $lookup.
What a document database is, JSON/BSON, dot notation, and a tour of the data.
Query by field, reach into nested fields and arrays, and choose which fields come back.
$gt $lt $in $regex $exists $and $or — with sliders so you feel each one.
Order results, take the top N, count and get distinct values.
insertOne, updateOne with $set/$inc, deleteOne — with a Reset net.
The big idea: documents flow through stages. Watch $match and $project live.
$sum $avg $min $max $push — turn many documents into summaries.
Explode arrays into rows and join collections — the two power stages.
Assemble a multi-stage pipeline with sliders and watch every stage transform the docs.
One-page reference plus puzzles the engine checks for you.
Saved in your browser — close the tab and come back where you left off.