Designed a search engine that consist of information retrieval system and index of web pages. The first part of this project was to create a readable inverted index that can be used by the BM25 ranking algorithm to get the rank of documents based on scores. The next part was to implement the BM25 ranking algorithm. The project was completed using Python.