Usage

The main user interfaces are described as follows:

1. Searching for a Question Paper

_images/search.png _images/search2.png

Searching is done through AJAX. It uses debounced calls to our API. Several filters can be added as shown in the image.

Besides, user can search for papers which are tagged with specific keywords. Those keywords are defined by the uploader while uploading the papers or added by the admin.

5 most recent search histories are also shown. These are stored in browser local storage.

2. Uploading a paper

_images/upload.png

Uploading a paper is done one at a time for a normal user by the interface as shown above. Keywords to be considered while adding papers:

  • Difficulty: Hard/Easy
  • Concepts covered
  • Paper setter etc.

The uploaded papers are sent to Google Drive.

However, occassionally admin needs to scrape paper links from the Library Site and add them in a bulk. For that, specifically for admin, a bulk upload interface is present.

_images/upload_elevated.png

3. Requesting a paper

_images/request.png

Here users can request papers if not found.

4. Login and Registration

Users are NOT enforced to create an account to perform the above tasks. This is done to cut the overhead time, thereby improving User Experience. However, they can still create an account to let us know who are the curators of the page.

The login system thereby serves as an entrypoint for the admin to log in.

_images/login.png _images/register.png

5. Search API

Besides these graphical interfaces, we also provide a JSON API to ease integration with other apps.

The default route for it is: /search/api.

Supports GET requests with the following parameters:

  • q: The search query (on subject name)
  • year: Year filter
  • dep: Department filter
  • typ: Paper type filter
  • key: Comma separated list of keywords to search for.