We're updating the issue view to help you get more done. 

Access portal for NRS

Description

Job description from

For some new clients, we need to re-create the functionality and basic design of an old website.

Currently, a good example of the code is live on this url:
https://webarchive.nrscotland.gov.uk/

I've taken the precaution of archiving the site however, so that it doesn't go dark before we finish:
https://wayback.archive-it.org/10681/*/https://webarchive.nrscotland.gov.uk/
https://partner.archive-it.org/798/collections/10681/crawl/648021/seeds/https%3A%7C%7Cwebarchive.nrscotland.gov.uk%7Csearch%7C%3Fquery%3Dexample%2Bsearch%26where%3Dtext

To begin with, we'll probably need to explain some concepts about how things are set up in Archive-It so we can describe how the site functions. Firstly a seed is a url which is an entry point to a web archive. The main interface at `https://webarchive.nrscotland.gov.uk` is a list of seeds separated into buckets by initial letter of the seed title. Which brings us to the topic of metadata. From an archive's perspective, information about seeds is stored as metadata, or data about data. In Archive-it's implementation, metadata is stored in a separate table, which complicates our query pattern a bit. The last concept of note here is full text search. We will retrieve full text search results for queries from the user. This is represented in a url like: https://webarchive.nrscotland.gov.uk/search/?query=example+search&where=text

Now back to the project description. In all, you will be implementing an application that presents views of two types of data: API results and Full Text search results. Both result types can be retrieved as JSON from existing APIs. However, you will likely need to implement a minimal proxying server to deal with cross-domain requests, which most browsers disallow.

So mostly, your job will be to create an html/javascript application that renders templates based on JSON results. To best recreate the functionality of the original site, you may want to use a frameset. If you need help with building a server-side application to proxy the JSON APIs, we can help with that.

While working on this application, keep in mind that it will be re-used for a number of clients with as little modification as possible, so it is probably wise to consult a settings file when you find something that may vary between clients, e.g. organization name, colors in the UI, etc. (You'll probably want this to be json or a javascript snippet in the main javascript file, or a settings file for CSS or a combination thereof).

Please use this git repository to commit your work:
https://git.archive.org/archive-it/imr-seed-site

Here are some urls that should provide the lists of seeds that you'll be proxying to render alphabetically-bucketed Seeds:
https://partner.archive-it.org/api/seed?collection=10681&metadata__name=Title&metadata__value__startswith=A
https://partner.archive-it.org/api/seed?collection=10681&metadata__name=Title&metadata__value__startswith=B
https://partner.archive-it.org/api/seed?collection=10681&metadata__name=Title&metadata__value__startswith=C
etc...

Here are some urls that should provide full-text search results as JSON:

The new website also needs to utilize the same branding and color scheme as the old one. All original css files and resources are located here: https://drive.google.com/open?id=1KhaitbSyRBHtOjZPurxaqWzhMBHuFh5F

As a final note, the devs on our team are generally famililar with Angular, so we'd prefer an Angular.js (1.x) app or React, and we'd prefer if you use the Zurb Foundation CSS framework (it's easier to modify and work with than bootstrap etc)

Status

Assignee

Maria Praetzellis

Reporter

Maria Praetzellis

Priority

Major