j-andrews7 / genotify Goto Github PK
View Code? Open in Web Editor NEWA minimal desktop app for easy and convenient gene annotation and lookup.
License: Other
A minimal desktop app for easy and convenient gene annotation and lookup.
License: Other
This would allow for a more fluid look, as the ugly native default title bar could be customized. However, doing this means the menu bar would also have to be reconstructed in HTML/CSS/JS. Probably a fair amount of work, but would let it look like Slack, Github Desktop, etc.
More specialized functional info for worm genes from WormBase would probably be appreciated by some people.
Will need to figure out how to propagate user data.
For limiting search to a single species.
Trying to populate the species dropdown on page load so that users can select one or more species to limit searches to. While the code in the populateDropdown
function works just fine (when called on dummy elements from newQuery
, for example), I can't get the code to actually run on page load. It will likely have performance issues, but will deal with that when I come to it.
A searchable, multi-selectable datalist would probably be preferable, maybe this is a better solution: http://projects.sergiodinislopes.pt/flexdatalist/
Can search a JSON
file directly, without need for loading. Would have to restructure the file a bit, but it might be worth a look.
Since they changed their API slightly, the second "annotate" call really isn't necessary. All info can be returned with the initial query, no need to use the second API call with the top hit's Entrez ID.
Only application menu is present, only option is "Quit".
Easiest to do from the Human Protein Atlas project most likely:
https://www.proteinatlas.org/about/help/dataaccess
Text stating localization as well as IF images where possible.
Insidious little bugger.
Headers are lost after an initial query returns no hits. They don't return after the next search does return hits.
Molecular function, biological process, cellular component. Small tables for each with non-redundant terms.
For those species outside of the common species list, only the species ID is listed in the results. Not all that helpful.
Change to pull from the species list directly.
UI looks pretty dated as it stands. A few quality of life changes would make it look a lot better and improve functionality.
Installing from source (either release 1.2.1 or latest master branch) issues a warning about vulnerabilities:
npm install
added 275 packages from 317 contributors and audited 862 packages in 207.604s
found 18 vulnerabilities (7 moderate, 10 high, 1 critical)
runnpm audit fix
to fix them, ornpm audit
for details
npm audit fix
fixes most of them, but two need manual intervention:
=== npm audit security report ===
┌──────────────────────────────────────────────────────────────────────────────┐
│ Manual Review │
│ Some vulnerabilities require your attention to resolve │
│ │
│ Visit https://go.npm.me/audit-guide for additional guidance │
└──────────────────────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ High │ Cross-Site Scripting (XSS) │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package │ jquery │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in │ >=3.0.0 │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ 6e44d50bacc878a1fec8f2e35b9e15154e57a73f67b28be770f40b01236… │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path │ 6e44d50bacc878a1fec8f2e35b9e15154e57a73f67b28be770f40b01236… │
│ │ > jquery │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info │ https://npmjs.com/advisories/328 │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ Moderate │ Prototype Pollution │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package │ jquery │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in │ >=3.4.0 │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ 6e44d50bacc878a1fec8f2e35b9e15154e57a73f67b28be770f40b01236… │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path │ 6e44d50bacc878a1fec8f2e35b9e15154e57a73f67b28be770f40b01236… │
│ │ > jquery │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info │ https://npmjs.com/advisories/796 │
└───────────────┴──────────────────────────────────────────────────────────────┘
found 2 vulnerabilities (1 moderate, 1 high) in 867 scanned packages
2 vulnerabilities require manual review. See the full report for details.
Be nice to let the user see the top few hits rather than the sole top hit.
Need to create a small table that displays the entrez ID, Symbol, species, and match score. Make the entrez ID a link that results in that hit being shown.
Somewhat hard to reproduce. cmd+c
sometimes stops copying to clipboard on OSX. Need my own testing environment, but think it may be related to electron/electron#9352, which is unresolved thus far. Some say it's an issue when launching from tmux, but that's not how we typically launch, it shouldn't be affecting things.
Ends up messing with UI and trying to create link from multiple pfam domains, each of which should be a link.
The linux binary fails with segmentation fault in current Debian testing and Ubuntu 19.04.
Steps to reproduce:
wget https://github.com/j-andrews7/Genotify/releases/download/v1.2.1/Genotify-v1.2.1-linux-x64.tar.gz
tar xzf Genotify-v1.2.1-linux-x64.tar.gz
cd Genotify-v1.2.1/
./Genotify
Debian system information:
uname -a
Linux worknote 4.19.0-5-amd64 #1 SMP Debian 4.19.37-6 (2019-07-18) x86_64 GNU/Linux
Ubuntu system information:
uname -a
Linux precision 5.0.0-25-generic #26-Ubuntu SMP Thu Aug 1 12:04:58 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Let me know if more information is needed.
Currently, sections devoid of any filled fields just show a blank space. A simple message will make it more obvious that there's just no info so it doesn't seem like things just aren't showing up.
Not sure how this happened, but the species dropdown is showing up duplicated now. The HTML only has it once, so I'm not totally sure how it happened.
Normally, calling the render
creates several divs and renders the expression widget. However, after moving the render call inside the displayData
function, this error happens every time and doesn't render, instead just displaying the parameters fed into the function.
Labels and checkboxes are shifted, not really sure why. Need to look more closely at the CSS to fix.
We have little in the way of phenotypic/disease data, so adding a table of these would be helpful. Will probably use the CTD API: http://ctdbase.org/help/batchQueryHelp.jsp#api
Similar process to current expression browser:
https://github.com/ebi-gene-expression-group/scxa-tsne-widget/tree/1.0-rc1
Uses UniProt ID and provides an interactive widget (similar to the Expression Atlas) with structures, domains, mutations, etc.
Display actual domain names, which are derived from PFAM, Prosite, and SMART. Seems to be a sort of non-redundant domain database that aims to integrate the strengths of all those different sources.
Will be more informative than current domain info we have. Maybe add a separate section even for these.
This is an odd one. When the Enter key is used to initiate a query, the app briefly flashes the proper results, then resets. The console is cleared as well.
Using breakpoints, everything is fine until line 111 when the response is JSONified. Breakpoints used in that block don't seem to trigger, though you can see the results flash briefly, so the code is being run. At a lost, as clicking the magnifying glass button or using the ctrl+q
hotkey command both work fine. Altering the code so that enter instead clicks the button also has the same issue.
Easily replicated, due to some hits not having symbol
fields. Changing it so NA
will be plugged in when these aren't available (similar to how missing species are handled now).
Ends up returning a 404 from the Uniprot API request, as multiple IDs are submitted. Need to parse it so that only the first returned ID is used in the API request.
Example query is "POLR2M". Relatively rare, but annoying.
These little one-liners related to function (and back by publications) are nice. A table of them would be useful in the function section. Can be parsed directly from the MyGene query, so should be easy to add.
Makes loading a lot more nifty.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.