Build Your Own Search Engine
Build a full-text search engine from scratch. You'll tokenize documents, build inverted indexes with positions, support boolean and phrase queries, rank with TF-IDF and BM25, add field boosts, compress posting lists with VByte+delta encoding, and even add spell correction. By the end you'll deeply understand how Lucene, Elasticsearch, Tantivy, and Meilisearch actually work.
intermediate13 lessons4 chapters13 graded exercisesPython
No sign-up needed for lesson 1 · certificate on completion · sign up to save progress
What you’ll have built
Chapter by chapter. Every step is a graded exercise.
- Tokenization & Indexing
- Boolean Queries
- Ranking: TF-IDF & BM25
- Production Concerns
Starts in Python — solve in the language you choose in the editor, same tests either way.
Curriculum
4 chapters, 13 lessons. Each lesson is a short read, one graded exercise, and a quiz.
- 1TokenizationRead · exercise · quiz
- 2Porter StemmerRead · exercise · quiz
- 3The Inverted IndexRead · exercise · quiz
Loading reference solution…