A simple search engine that processes text files in a directory and its subdirectories, cleans and parses the text into word stems, and builds an in-memory inverted index. Supports exact search and partial search for any multi-line queries. The project also implements multi-threading on searching and building the inverted index.