Giter Site home page Giter Site logo

varianteffect / mavedb Goto Github PK

View Code? Open in Web Editor NEW
12.0 12.0 4.0 21.05 MB

MaveDB database web application

Home Page: https://www.mavedb.org

License: GNU Affero General Public License v3.0

Python 88.02% CSS 1.67% HTML 8.60% JavaScript 1.09% Shell 0.35% Dockerfile 0.26%

mavedb's People

Contributors

afrubin avatar daniaki avatar dependabot[bot] avatar estelleda avatar joemin avatar jstone-uw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

mavedb's Issues

Resources links

The "Resources" section in the footer can probably get removed.

  • "Help" is Documentation.
  • "Source" is handled by the Octocat.
  • "Contact" is also under About.
  • "Downloads" is not needed since I think we can prefer the API for bulk downloads. If people want an FTP-like interface we can add one later.

Adding Contributors

When I add contributors to an Experiment or Score Set and click "Save" the only way to go back to the previous page is to press "Cancel".

Ideally, after saving, the page would show a preview of the current contributor list (as its rendered on a Score Set page) with a single button to "Return" to the Profile page.

Usage vs. Documentation

I'm not sure what the difference is between usage and documentation. I think it makes more sense to have a single (potentially very long) documentation page and get rid of usage. If we want to create a step-by-step tutorial later, we can add a separate page back in if we want it to be separate.

Static documentation

Documentation, about page, etc. should be handled in a similar way to licenses. Static markdown files should be in the GitHub repository that are pulled into the site using a manage.py command during setup or when those documents are updated.

Keyword display

It would be nice if keywords had little boxes around them when they are displayed on the ScoreSet or Experiment page, rather than being space separated. The current implementation makes multi-word keywords run together a bit.

HGVS string validation

Currently there is no HGVS validation in place when a user uploads a new dataset. This could be implmented using regex validation on a subset of the HGVS standard, or the hgvs python library.

MaveVis integration

@jweile What are the requirements for viewing a ScoreSet in MaveVis?

If someone has a UniProt ID and offset with their ScoreSet can we add a "View in MaveVis" or similar button to the ScoreSet page, and if so what is the format of the URL?

The button should launch in a new page/new tab by default.

DOI links

Experiments and ScoreSets should be able to have multiple DOI's linked to them. The documentation and UI should clarify that these DOI's are for data rather than publications. Papers will be added by PMID (see #18).

Login button doesn't work on data pages

The login button/link only works on the main page, but not while viewing experiments or scoresets. Clicking on the ORCID button results in the following error message:

Not Found

The requested URL /experiment/EXP000001A/accounts/login/ was not found on this server.

Successful creation message

The creation message when a Score Set is created is unintuitive. It should clarify that "procesing" means that scores and counts are still being entered into the database. Otherwise it seems like it worked properly but there's no counts and scores.

ScoreSet SRA

ScoreSets should not display the SRA identifiers field.

Datasets by user

There should be a user list and a page to view all (public) datasets associated with each user. Users should only appear on this list if they appear on at least one public dataset.

README

The GitHub README is woefully out of date. It needs to get updated with the current requirements, new manage.py commands that have to get run on server setup, and a pointer to the CentOS 6 document.

Alternatively, the CentOS 6 markdown document could get merged into the GitHub README under a "setup on CentOS 6" section or similar.

Adding score sets

There should be an obvious button to add a score set after adding an experiment.

Accession prefixes

Currently accession prefixes (EXPS, EXP, SCS) should be replaced with a single MAVEDB-specific prefix, since the type of entity is already encoded in the accession number format. This will help easily identify MAVEDB records in future publications.

I'm in favor of MAVE or MAVEDB as a prefix. Existing entities would be renamed, and I think the database is still small enough to get away with it without requiring potentially complicated backwards compatibility.

@jweile Comments on this idea or suggestions for a good prefix?

manage.py createlicenses

python manage.py createlicenses should generate some output ("Added N licenses" or similar) so that it's clear that it worked.

API access to experiment metadata

Value-added tools will need access to experiment metadata, especially:

  • Target name
  • WT sequence
  • external accessions (x-refs)
  • reference maps

Editor role

Contributors with the Editor role should not be able to publish Score Sets.

Private entry message

The "Access Denied" message displayed when trying to access a private entry refers to the controlling user by ORCID number rather than name. This should be replaced with the user's name as a link to their ORCID page.

Public/private tiles

Public vs. private ScoreSet and Experiment tiles should be color coded or otherwise more obvious.

Adding administrators/viewers by name

When adding administrators or viewers to an existing entry, the autocompletion is done by ORCID rather than by name, which is much less intuitive.

Score set licensing

Score sets should be licensed using one of the following two options:

  • CC BY-NC-SA 4.0 (Attribution-NonCommercial-ShareAlike) [default]
  • CC0 (Public domain)

Private ScoreSets listed in Search

I can see Jochen's private ScoreSet in the list even though I'm not a contributor.

screen shot 2018-04-26 at 8 05 33 am

The "restricted access" page that appears when clicking on it shows the correct behavior.

Score Set licence on webpage

Right now the Score Set licence is not shown on the Score Set page but this is critical information! It seems like it's only viewable through the API.

We could consider adding graphics corresponding to the licences next to the MaveVis and download buttons since CC has nice banner icons for us to use (see below), but a text field is fine for now.

https://mirrors.creativecommons.org/presskit/buttons/88x31/svg/by-nc-sa.svg
https://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg

Typo in Experiment tabs

The tabs when viewing an Experiment are titled "Information" "Scores Sets" and "Reference Maps". The second should be "Score Sets".

ScoreSet preview

Columns in the ScoreSet preview should be in scientific notation with with 3(?) significant figures.

Show commit number

It would be helpful for debugging now and in the future to have the GitHub branch and commit number for the build running on the server to be displayed in small font in the footer on each page. This could be turned off in production, or just made very subtle.

Uploading score sets

Labels on the data fields are "Scores data" and "Counts data". Should be "Score data" and "Count data".

The counts field is marked with an asterisk, indicating that it's required, but counts should be optional.

Standard boilerplate "* indicates a required field" does not appear on this page, may be missing from others as well.

Scores/Counts table page resets

Every time a new get request is made on the score set page, the page number the user is currently on for the table which is not being viewed is reset. Implement a fix to stop the resetting so table rows can be easily compared.

Contributor names

Contributors are currently identified by their first and last names. However, ORCID supports a "published name" field that we should use if it's filled out.

Adding administrators as admin account

Attempting to add an administrator to an existing experiment set when logged in as an admin/staff account returns a warning that the admin/staff account will no longer be an administrator.

Also there is a typo in the warning message.
screen shot 2017-12-06 at 10 55 03 am

Uploading counts

Counts and scores should not be required to have the same number of rows.

No license

The repository has a blank license file. We need to figure out whether to choose GPL (AGPL?), MIT, or something else.

Cancel Button

Submit Experiment and Submit ScoreSet pages should have a "Cancel" button instead of just "Submit".

Creating new datasets

Right now, the user has to go to their profile page and click the menu to upload a new dataset. There should be a new option ("Upload"? "Contribute"?) between Profile and Logout that makes this easier to find.

Preview buttons

Method descriptions, etc. need a preview button. This can open a new window or display below the active field but would be very helpful for the math stuff in particular.

T&C, Privacy

Right now there are empty spots for "Terms and conditions" and "Privacy". We need to figure out what goes here. I'm assuming that this is dictated by Washington state law, since that is where the server is hosted.

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.