// The Full Lab Catalog

Simulation Labs

Every interactive lab we've built, organized by track. Machine Learning, Data Structures & Algorithms, and Deep Learning — learned by doing, not by reading.

// Machine Learning

ML Labs

Regression, classification, clustering, and evaluation — all interactive.

Linear Regression Lab ML Lab

Linear Regression Lab

Fit a line to data by hand and compare it to the least-squares solution.

Polynomial Regression Lab ML Lab

Polynomial Regression Lab

Explore how increasing polynomial degree changes the fit — and the risk of overfitting.

Logistic Regression ML Lab

Logistic Regression

See how logistic regression draws decision boundaries for classification.

Gradient Descent Basics ML Lab

Gradient Descent Basics

A beginner-friendly walkthrough of how gradient descent finds the optimum.

Gradient Descent Lab ML Lab

Gradient Descent Lab

Roll down a loss surface and see how learning rate changes the path to the minimum.

Decision Tree Builder ML Lab

Decision Tree Builder

Build and prune a decision tree while watching splits happen live.

Decision Tree Builder v2 ML Lab

Decision Tree Builder v2

A refined decision tree simulator with deeper visualization of splits and impurity.

K-Nearest Neighbors ML Lab

K-Nearest Neighbors

Classify points live by adjusting k and watching decision boundaries shift.

K-Nearest Neighbors v2 ML Lab

K-Nearest Neighbors v2

An enhanced KNN sandbox with distance metrics and boundary visualization.

Support Vector Machine Lab ML Lab

Support Vector Machine Lab

Watch SVM find the optimal separating hyperplane and margin.

K-Means Clustering ML Lab

K-Means Clustering

Watch clusters form step-by-step as centroids converge on real data points.

DBSCAN Clustering ML Lab

DBSCAN Clustering

Discover density-based clustering and how it finds clusters of arbitrary shape.

DBSCAN Clustering v2 ML Lab

DBSCAN Clustering v2

An upgraded density-based clustering sandbox with tunable epsilon and min-points.

Principal Component Analysis ML Lab

Principal Component Analysis

Reduce dimensions visually and see which directions carry the most variance.

Confusion Matrix Explorer ML Lab

Confusion Matrix Explorer

See how predictions map to actual outcomes and how metrics are derived.

Precision vs Recall Lab ML Lab

Precision vs Recall Lab

Tune a classification threshold and watch precision and recall trade off live.

ROC vs Precision-Recall Curves ML Lab

ROC vs Precision-Recall Curves

Compare two key evaluation curves and understand when to use each.

Cross-Validation Lab ML Lab

Cross-Validation Lab

Explore how k-fold splits protect models from overfitting to a single dataset.

Bias vs Variance ML Lab

Bias vs Variance

Visualize the tradeoff between underfitting and overfitting as complexity changes.

Noise & Overfitting Lab ML Lab

Noise & Overfitting Lab

Add noise to data and watch how models react — and where they break.

Probability Playground ML Lab

Probability Playground

Build intuition for probability distributions through interactive experiments.

Statistics Arcade ML Lab

Statistics Arcade

A game-like sandbox for core statistics: mean, variance, and distributions.

Vectors & Broadcasting Lab ML Lab

Vectors & Broadcasting Lab

Build intuition for vectors, dot products, and broadcasting through play.

// Data Structures & Algorithms

DSA Labs

Sorting, searching, graphs, and core data structures — visualized step by step.

The Recursion Construction Yard DSA Lab

The Recursion Construction Yard

A live recursion tree for the Master Theorem.

The Caliper Line DSA Lab

The Caliper Line

Brute force vs sliding window, counted side by side.

The Collision Course DSA Lab

The Collision Course

A balance-scale take on the Two Sum problem.

The Prefix Sum Waterfall DSA Lab

The Prefix Sum Waterfall

Range sums as water pouring through buckets.

Kadane's Contiguous Engine DSA Lab

Kadane's Contiguous Engine

Maximum subarray sum as a bursting bag.

The Matrix Spiral Tracer DSA Lab

The Matrix Spiral Tracer

Four shrinking tripwire boundaries trace the spiral.

The Memory Address Sandbox DSA Lab

The Memory Address Sandbox

A raw hex-address RAM simulation.

The List Reversal Rewirer DSA Lab

The List Reversal Rewirer

Reverse a linked list one rewired pointer at a time.

Floyd's Kinematics Lab DSA Lab

Floyd's Kinematics Lab

Cycle detection via slow and fast pointers.

The Zipper Merge DSA Lab

The Zipper Merge

Merge two sorted lists in O(1) space.

Cache-Coaster Park DSA Lab

Cache-Coaster Park

An LRU Cache as a theme-park ride queue.

Neural Weaver DSA Lab

Neural Weaver

Doubly linked list insert and delete, click by click.

The Palindrome List Folder DSA Lab

The Palindrome List Folder

Fold a linked list in half to check for a palindrome.

The Clone Chamber DSA Lab

The Clone Chamber

Clone a linked list that has random pointers.

The Call Stack Tower DSA Lab

The Call Stack Tower

Recursion as blocks stacking and collapsing.

The Bracket Tube DSA Lab

The Bracket Tube

Valid Parentheses as a Tetris-style falling stack.

The Crushing Stack DSA Lab

The Crushing Stack

Next Greater Element via a monotonic stack.

The Double-Ended Tube DSA Lab

The Double-Ended Tube

Sliding Window Maximum via a monotonic deque.

The Circular Queue Ring DSA Lab

The Circular Queue Ring

A literal ring layout for a circular queue.

The Threat Matrix DSA Lab

The Threat Matrix

N-Queens with live laser threat lines.

The Rat's Breadcrumb Trail DSA Lab

The Rat's Breadcrumb Trail

Rat in a Maze, backtracking one dead end at a time.

The Permutation Tree DSA Lab

The Permutation Tree

Watch a decision tree grow every permutation live.

The Traversal Tracer DSA Lab

The Traversal Tracer

One robot walks all three DFS tree traversal orders.

BST Gravity Drop DSA Lab

BST Gravity Drop

Balls fall through a funnel to build a BST.

The AVL Balancer DSA Lab

The AVL Balancer

All four AVL rotation cases, live.

The B-Tree Splitter DSA Lab

The B-Tree Splitter

A configurable-degree B-Tree with real search.

The LCA Liquid Mixer DSA Lab

The LCA Liquid Mixer

Two colored liquids climb and mix at the LCA.

The Serialization Laser DSA Lab

The Serialization Laser

BFS tree serialization with null markers.

The BFS vs DFS Race DSA Lab

The BFS vs DFS Race

A spreading puddle races a bolt of lightning.

The Dijkstra Wavefront DSA Lab

The Dijkstra Wavefront

Shortest paths as an expanding water wavefront.

The Kruskal Sorter DSA Lab

The Kruskal Sorter

Minimum Spanning Tree via Kruskal and union-find.

The Binary Space Shrinker DSA Lab

The Binary Space Shrinker

Binary Search as a shrinking block of wood.

The Cluster Boss DSA Lab

The Cluster Boss

A standalone Union-Find with union-by-size.

The Bellman-Ford Detector DSA Lab

The Bellman-Ford Detector

Shortest paths that also catch negative cycles.

The Flood Fill Sandbox DSA Lab

The Flood Fill Sandbox

Click anywhere to trigger a 4-directional BFS fill.

The Rotated Array Wheel DSA Lab

The Rotated Array Wheel

Search a rotated array on a spinning circular dial.

The Merge Sort Zipper DSA Lab

The Merge Sort Zipper

Split into blocks, then zipper them back sorted.

The Quick Sort Wall DSA Lab

The Quick Sort Wall

The pivot becomes a wall; elements fly over it.

Selection vs Bubble Sort DSA Lab

Selection vs Bubble Sort

A red ripple races a cyan scan-and-leap beam.

The Fibonacci Cache DSA Lab

The Fibonacci Cache

Naive vs memoized recursion trees, side by side.

The Stability Test DSA Lab

The Stability Test

Merge (stable) vs Quick (unstable) on tagged duplicates.

The Counting Sort Bins DSA Lab

The Counting Sort Bins

Throw values into bins, then pour them back sorted.

The Tower of Hanoi DSA Lab

The Tower of Hanoi

Lift, slide, and drop disks with a live recursive narration.

The Y-Shape Intersection DSA Lab

The Y-Shape Intersection

Two-pointer walkers find where two lists intersect.

The Heap Sifter DSA Lab

The Heap Sifter

Min/Max Heapify via bottom-up sift-down.

The Hash Collision Sandbox DSA Lab

The Hash Collision Sandbox

Chaining vs Linear vs Quadratic probing, compared live.

Kahn's In-Degree Queue DSA Lab

Kahn's In-Degree Queue

Topological sort — and catching a cycle in the act.

The Knapsack Grid DSA Lab

The Knapsack Grid

0/1 Knapsack as a DP grid, with item backtrace.

The LCS Diagonal Trace DSA Lab

The LCS Diagonal Trace

Longest Common Subsequence, traced back to the actual string.

The Word Morpher DSA Lab

The Word Morpher

Levenshtein edit distance, one grid cell at a time.

The Coin Change Tree DSA Lab

The Coin Change Tree

A branching recursion tree counts every way to make change.

Bubble Sort DSA Lab

Bubble Sort

Watch bubble sort compare and swap its way to a sorted array, step by step.

Selection Sort DSA Lab

Selection Sort

Watch selection sort repeatedly find the minimum and build a sorted array.

Insertion Sort DSA Lab

Insertion Sort

See how insertion sort builds a sorted array one element at a time.

Merge Sort DSA Lab

Merge Sort

Watch merge sort divide, conquer, and merge its way to a sorted array.

Quick Sort DSA Lab

Quick Sort

Watch quicksort partition and recurse its way to a sorted array.

Heap Sort DSA Lab

Heap Sort

Watch a binary heap build and unwind itself into a sorted array.

Counting Sort DSA Lab

Counting Sort

See how counting sort achieves linear-time sorting for bounded integer ranges.

Radix Sort DSA Lab

Radix Sort

See how radix sort sorts numbers digit by digit without comparisons.

Binary Search Lab DSA Lab

Binary Search Lab

Step through binary search and see exactly how the search space shrinks.

BFS vs DFS DSA Lab

BFS vs DFS

Compare breadth-first and depth-first traversal side-by-side on the same graph.

Dijkstra's Algorithm DSA Lab

Dijkstra's Algorithm

Visualize shortest-path discovery across a weighted graph, node by node.

A* Pathfinding DSA Lab

A* Pathfinding

Watch the A* algorithm search a grid for the shortest path using heuristics.

Linked List Lab DSA Lab

Linked List Lab

Insert, delete, and traverse nodes to build intuition for pointer-based structures.

Stack Lab DSA Lab

Stack Lab

Push and pop elements to build intuition for LIFO structures.

Queue Lab DSA Lab

Queue Lab

Enqueue and dequeue elements to build intuition for FIFO structures.

Hash Tables Lab DSA Lab

Hash Tables Lab

Explore hashing, collisions, and resolution strategies interactively.

Algorithm Race: Best vs Worst DSA Lab

Algorithm Race: Best vs Worst

Race algorithms head-to-head and see how input order changes performance.

// Deep Learning

PyTorch Labs

Tensors, autograd, layers, activations, optimizers, RNN/LSTM, loss functions, and generative models — all interactive.

Tensor Dimensions PyTorch Lab

Tensor Dimensions

0D to ND tensors, visually.

Tensor Broadcasting PyTorch Lab

Tensor Broadcasting

How mismatched shapes stretch to match.

Tensor Reshape & View PyTorch Lab

Tensor Reshape & View

Reshaping data without moving it.

Tensor Slicing & Indexing PyTorch Lab

Tensor Slicing & Indexing

Picking exactly the elements you need.

Squeeze & Unsqueeze PyTorch Lab

Squeeze & Unsqueeze

Adding and removing size-1 dimensions.

Matrix Multiplication PyTorch Lab

Matrix Multiplication

torch.matmul, row by column.

Device Transfer (CPU ↔ GPU) PyTorch Lab

Device Transfer (CPU ↔ GPU)

Moving tensors between devices.

In-place Operations PyTorch Lab

In-place Operations

The add_() trailing underscore, explained.

Dynamic Computation Graph PyTorch Lab

Dynamic Computation Graph

How PyTorch builds the graph as you compute.

The Forward Pass PyTorch Lab

The Forward Pass

Data flowing through a network, live.

The Backward Pass PyTorch Lab

The Backward Pass

backward() and gradient flow.

Gradient Accumulation PyTorch Lab

Gradient Accumulation

Why gradients pile up without zero_grad().

requires_grad Switch PyTorch Lab

requires_grad Switch

Turning autograd tracking on and off.

Inference Mode (no_grad) PyTorch Lab

Inference Mode (no_grad)

Why inference skips gradient tracking.

Detaching Tensors PyTorch Lab

Detaching Tensors

Cutting a tensor loose from its graph.

Linear Layer PyTorch Lab

Linear Layer

nn.Linear as weights and a bias, animated.

2D Convolution PyTorch Lab

2D Convolution

nn.Conv2d sliding across an image.

Max Pooling PyTorch Lab

Max Pooling

nn.MaxPool2d, keeping only the loudest pixel.

Flattening PyTorch Lab

Flattening

nn.Flatten turning a grid into a line.

Dropout PyTorch Lab

Dropout

Randomly silencing neurons during training.

Batch Normalization PyTorch Lab

Batch Normalization

nn.BatchNorm2d stabilizing activations.

Layer Normalization PyTorch Lab

Layer Normalization

nn.LayerNorm, normalizing per example.

Word Embeddings PyTorch Lab

Word Embeddings

nn.Embedding turning words into vectors.

RNN Cell PyTorch Lab

RNN Cell

nn.RNNCell, one step of a recurrent net.

LSTM Cell Gates PyTorch Lab

LSTM Cell Gates

Forget, input, and output gates in action.

Gradient Clipping PyTorch Lab

Gradient Clipping

clip_grad_norm_, stopping exploding gradients.

ReLU PyTorch Lab

ReLU

nn.ReLU — the simplest activation, live.

Leaky ReLU PyTorch Lab

Leaky ReLU

A small negative slope instead of a hard zero.

GELU PyTorch Lab

GELU

nn.GELU, the smooth modern activation.

Adam vs RMSprop PyTorch Lab

Adam vs RMSprop

Two optimizers racing the same landscape.

dim Parameter Collapse PyTorch Lab

dim Parameter Collapse

torch.sum dim=0 vs dim=1, made concrete.

CNN-to-Linear Shape Mismatch PyTorch Lab

CNN-to-Linear Shape Mismatch

The RuntimeError every CNN builder hits once.

Early Stopping & Validation Loss PyTorch Lab

Early Stopping & Validation Loss

Catching overfitting before it gets worse.

MSE Loss PyTorch Lab

MSE Loss

Squared error as literal geometric squares.

Huber Loss (Smooth L1) PyTorch Lab

Huber Loss (Smooth L1)

A bowl near zero, straight lines far away.

Learning Rate & Optimizer Race PyTorch Lab

Learning Rate & Optimizer Race

SGD, Momentum, RMSprop, and Adam head to head.

Autoencoder & Latent Space PyTorch Lab

Autoencoder & Latent Space

Squeezing an image down to a single point.

Backpropagation Through Time PyTorch Lab

Backpropagation Through Time

Why RNNs forget the start of a long sequence.

GAN Mode Collapse PyTorch Lab

GAN Mode Collapse

When a Generator gives up and repeats itself.

CNN Filters & Kernels PyTorch Lab

CNN Filters & Kernels

What a convolution kernel actually detects.

LSTM Cell Gates (Conveyor Belt) PyTorch Lab

LSTM Cell Gates (Conveyor Belt)

Memory riding an undisturbed highway.

Variational Autoencoder (VAE) PyTorch Lab

Variational Autoencoder (VAE)

From a rigid dot to a probability cloud.

// STILL BROWSING?
Build along, don't just read.
Get labs & articles matched to what you're into — free, takes 30 seconds.
Start building free