A search engine application made up of crawler, indexer, and querier subsystems
ROLE
Software Engineer
COURSE
CS 50: Software Implementation and Design, Dartmouth College
LANGUAGES
C Unix
DURATION
3 weeks Spring 2023
I built a search engine application that crawls webpages, indexes them, and allows users to query through an interface, ranking the pages by relevance. It consists three subsystems:
Crawler: crawls the web from a seed URL to a given maxDepth and caches the content of the pages it finds in a given directory
Indexer: reads files from the given directory, builds an index that maps from words to URLs and writes that index to a given file.
Querier: returns webpages from query expressed as a set of words (optionally combined by AND, OR), and outputs a ranked list of URLs in which the given combination of words appear.