← All projects

Live

Wikigraph

Builds a prerequisite knowledge graph for any topic from Wikipedia, then lets you explore it in 2D or 3D with the foundations at the bottom.

When
2026
Stack
Python 3.9+ (standard library only) for the builder; one self-contained HTML page with three.js for the explorer
Try it
fellobello.github.io/wikigraph
Code
github.com/fellobello/wikigraph
Wikigraph's 3D explorer showing The Palindrome's machine-learning graph in levels, with the overview panel listing the foundations and concepts per level
The 3D explorer on the demo graph.

Why I built it

In school I have found myself needing to do a lot of the learning independently. For some more advanced topics I often would start at wikipedia to get an understanding what to learn. I wanted a map for any topic to guide my learning, built automatically from Wikipedia instead of by hand.

What it does

Interesting parts

Keeping the crawl finite

Following every link on Wikipedia never ends. The builder follows only the links in each article's definition, the first lead paragraph outside parentheses. Those links point at more basic ideas, so the crawl narrows toward foundations instead of spreading sideways. Filters drop people, places, fields of study and lists. A best-first node budget expands the most-cited concepts first, and "bedrock" concepts such as set and equality are never expanded.

Turning a link graph into layers

Raw Wikipedia links contain cycles and many redundant edges. The builder breaks each cycle by keeping edges from the more widely cited concept, then applies transitive reduction: it drops A→C whenever A→B→C exists. Then it computes each node's level, betweenness centrality and PageRank. Offline tests run the whole pipeline against a fake Wikipedia built by Claude.