Now that we have briefly described the application we want to build and the reason for building it, let's look at the list of features we want to implement as part of the search engine:
- It should accept links to documents provided in the POST request and download them
- It should process and index the downloaded documents
- It should handle search queries and respond with a list of documents with snippets containing the search terms
- The returned list of documents should be in the order of greater occurrence of search terms in the document
Though we listed four functionalities, we can club the application into two main components:
- Goophr Concierge: This is the component responsible for indexing and returning the list of documents for search queries
- Goophr Librarian: This is the component responsible for handling user interaction and interacting with the first...