Giter VIP home page Giter VIP logo

pace-admin's Introduction

pace-admin

Publication Activity Collection Environment (PACE) Admin Tools and DB

A pilot project under development to investigate ways to streamline and improve the collection, reporting, and analysis of related publication information for the subsequent annual reporting process for campus centers and institutes. It is a time consuming process for each center/institute to determine scholarly productivity by polling faculty, reviewing their CVs, etc., where confidence in the data collected is crucial to ensure good investment decisions of University resources.

This pilot project will prototype a new process that automates data collection from internal and external sources and reporting, as well as integrate validation steps to increase confidence in data considered.

Starting from scratch

  1. Make sure you have Docker and Docker Compose.
  2. Also install the Hasura CLI. Run the following comme to ensure you have the correct version:
    hasura update-cli --version v2.1.1
  3. If you are using a Mac with the M1 chip (AMR64) you will need to manually build Keycloak. Change to your root git directory on your machine and run the following commands" git clone https://github.com/keycloak/keycloak-containers.git cd keycloak-containers/server git checkout tags/15.1.1 -b 15.1.1 git fetch --all --tags docker build -t jboss/keycloak:15.1.1 .
  4. You may already have Node on your system but installing the recommended version via NVM or NVM Windows is preferred. Please install NVM.
  5. Clone the repository from Github
  6. Run the following to enter the pace-admin directory and initiate a new environment variable file by copying environment template:
    cd pace-admin
    cp .env.example .env
  7. Now would be the appropriate time to make changes to your .env file; we will provide documentation for the options in the near future.
  8. Now install and use the version of node as specified in ./.nvmrc by running the following from the above pace-admin directory:
    nvm install
    nvm use
  9. Install Yarn, Quasar CLI, and each applications node modules by running:
    make install
  10. Run:
    make setup
    When this is complete, copy the value of the public field into MEILI_PUBLIC_KEY of your .env file. For example,
    {
      "public": "...",
      "private": "..."
    }
  11. Run:
    make newdb
  12. Open several termanals and run the following commands:
    make docker && make logs
    make client
    make server
    make migration-console
    
  13. Now open http://localhost:8000 (or whatever port you chose in your .env file) and login using the credentials in the following variables of the .env file:
    [email protected]
    DEV_USER_FIRST_NAME=Test
    DEV_USER_LAST_NAME=Testersen
    DEV_USER_PASSWORD=password
    

Running in production

  1. First, make sure ./.env includes ENV=prod. This not only configures your environment properly but adds several protections to commands invoked via make.
  2. Next, check the rest of the environment varialbes in ./.env. You'll certainly need to customize these settings.

Production - Harvest Data from Scopus

Production - Generate Thumbnails and harvest PDFs for publications

Production - Dashboard Data

When you get to a point where publications have been reviewed and approved for a center/institute you can load data into the dashboard by running

make dashboard-ingest

Updating your database

File tree summary (TODO)

FAQ (TODO)

What do I do about the following warning from redis? WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

TODO

  • Deal with data.ms in dashboard-search (add to make clean, add .gitkeep, and add to .gitignore)
  • Run app through lighthouse
  • Add rest of notre dame metadata in the vue-head on the landing page
  • don't recomple spa every time on make prod

pace-admin's People

Contributors

rickjohnson avatar jeffspies avatar jeremyf avatar dependabot[bot] avatar

Stargazers

Mikey avatar

Watchers

 avatar  avatar James Cloos avatar  avatar

pace-admin's Issues

Add calculation of confidence

In addition in UI display breakdown of confidence checklist:
Last Name Match
Last Name plus first initial
Notre Dame affiliation match

PDF Thumbnailing

Upon downloading PDFs, generate thumbnails for display in the UI

Harvest name variations and researcher ids

Perform pre-data collection to populate initial set of name variants and ids for researchers within a center/institute: this includes ORCID ids, WoS Researcher ids, and SCOPUS ids

Author field empty click new person

If you have a publication expanded with authors listed and then click a new person, it keeps a publication expanded, but the data is empty. It should instead be collapsing the item when selecting a new person

View pdf from licensed source

When pulling up a record from SCOPUS be able to view the PDF for the applicable article

Need to confirm that proxying will work correctly to get html response (do not worry if we have downloaded already)

View downloaded PDF in UI

Priority Items Test Env

Priority items

  • Stable url
  • Pulling independent lists with cross-validation
  • When accept/reject item it lists potential duplicates to also approve
  • Export CSV list of matches to report (toggle conflicts only)
  • Bug: Title+author search failing on large item for author Hassan
  • Bug 3 below
  • Author list show authors as Notre Dame and/or author name matches - complete (w/out affiliation)
  • Fix thumbnail bug - complete
  • Tag source
  • Fix confidence value to be less of a match for different first name
  • Thumbnail click image opens paper
  • [ ]

Author authority profile

add something to show author authority profile (e.g., name variants, past works, ids) and more citation level metadata when doing reviews including popping out additional space simultaneously showing known author characteristics while looking for applicable publications to accept or reject

User Experience Review

  • move publication info to right w/ header panel
  • highlight current selected person and publication
  • year filter should be all years by default with only all applicable years
  • remove bulk edit
  • add status spinner to top of load publication screen
  • remove review counts on top of screen - add undo, redo operations there
  • sort person list - alphabetically or by pending count
  • review list white space reduced when opening a list to minimum needed - maybe change to tabs instead of one list
  • make expanded list of pubs always on bottom
  • clearer borders on list
  • remove other states if empty lists (maybe always show all as below)
  • have filter to show all states or only pending items
  • clear middle section until person selected
  • on right pane of publication highlight breakdown of confidence metric calculation
  • add count tickers above pub list regardless of show all or not
  • compact name variation list
  • Change hamburger button to dropdown of centers/institute (get rid of drawer)
  • Ripple effect
  • on right pane of publication highlight breakdown of confidence metric calculation
  • highlight common co-authors in co-author list or citation
  • in author list if more than x number, then display possible matches plus other relevant co-authors
  • collapsible left panelaaa

CSV Review Export Workflow for center director

Have center director export list per person of items to review for applicability to center

They can then tag and submit back to center director to be uploaded back into tool

Need to potentially account for adding new items manually as well

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.