npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

noctua

v0.0.10

Published

Experimental annotation editor for the Gene Ontology.

Downloads

49

Readme

  • The Noctua (Editor + Barista + Minerva) Stack

    Previously the GO MME.

    Current development is very rapid, so some of these docs may be out of date.

    More docs/API to be found [[http://geneontology.github.io/noctua][here]].

    Prototype editor frontend (Noctua) and messenger server (Barista) for the Gene Ontology Molecular Modal Environment server (Minerva).

    It is based on BBOP(X) JS (using the AmiGO 2 environment) and jsPlumb. The backend is the OWLTools Molecular Model Manager.

    While the editor is generally developed with Firefox, the user experience using Chrome/Chromium is quite a bit smoother.

    The current alpha instance is available at: http://noctua.berkeleybop.org

** Installation

You must start with a modern version of Node.js (say >=0.12.3). All of the tooling is built around that and should install easily with:

: npm install : ./node_modules/.bin/gulp build

Or, if you have "./node_modules/.bin" in your paht:

: npm install : gulp build

Tha available gulp tasks are:

  • doc - build the docs, available in doc/
  • test - need more here
  • build - assemble the apps for running
  • watch - development file monitor
  • clean - clean out /doc and /deploy

** Running

*** Minerva

TODO

Everybody is different, but mine is like: 

: GENEONTOLOGY="/home/sjcarbon/local/src/svn/geneontology.org/trunk/" make start-minerva-go-fast

*** Barista

TODO

Everybody is different, but mine is like: 

: make start-barista-dev

*** Graph Editor (previously "Noctua")

TODO

Everybody is different, but mine is like: 

: make start-noctua-dev

** How to use demo *** Generating/selecting a model

- Models that are currently known (either in memory or file) are
  found under [Current State] > select "Usable" > [Jump]
- To create a new model from a class and a DB, use [Wizard] >
  (fill out first sections) > [Generate]; this operation could
  take tens of minutes depending on the complexity
- To create a new model from just a DB, use [Wizard] > (fill out
  second section) > [Generate]; this operation may take minutes
  depending on the size of the GAF to be loaded
- Directly loading by copy-and-paste is not currently tested

*** Instances and edges

  • A new instance can be created by filling in the form on the left side of the display
  • Double clicking edges and instances allows the editing of evidence and comments
  • Clicking on the green box upper-left of an instance allows you to view and edit the instance type information
  • By dragging the blue circle in the upper-right of an instance to anywhere on a different instance will allow you to create a relation between the two
  • A complex expression can be added by opening the instance type editor and - Selecting: enabled_by - Entering an expression of the form: "GO:0043234 and ('has part' some UniProtKB:P0002) and ('has part' some UniProtKB:P0003)"

*** Models

- Model meta information can be edited by selecting [Model] >
  [Edit annotations] from the top menu
- [Model] > [Soft refresh] gets a fully updated model from the
  server; this is what you'll use for the time being when another
  user makes a change to the model
- [Model] > [Reset] complete reloads everything from the server
  from scratch
- To export to a text file (Manchester syntax), use
  [Export]
- To save your current model, select [Model] > [Save]; your model
  should now be available from the landing page

*** General navigation

- Dragging on the background of the model allows you to pan around
  without using the scrollbars
- Under [Views], there are various zooming options
- To reduce clutter, the "part of" relation can be hidden by
  selecting [View] > [Show/hide "part of"]
- The minimum space you start with is 800x600px. If you need more,
  try reseting your model--the space you can use will grow with
  it.

** Known Issues

The bulk of major issues and feature requests are handled by the tracker (https://github.com/geneontology/noctua/issues). If something is not mentioned here or in the tracker, please contact Seth or Chris.

  • Sometimes, when moving instance or relations near a boundary, the relations will fall out of sync; either move nearby instances or refresh the model
  • Sometimes, when editing an instance, the relations (edges) will fall out of sync; either move nearby instances or refresh the model
  • The endpoint scheme is reversed between creation and instantiation
  • TODO, etc.

** Deployment +This should be deployable in most JS environments. It should be+ +noted that we do most development on Ubuntu 12.04 using Chris Lea's+ +[[https://launchpad.net/~chris-lea/+archive/ubuntu/node.js][repo]]. Also, our alpha deployment environment is RedHat's OpenShift,+ +so we're hoping this is fairly flexible.+

We do have people who have run the whole stack easily on OS X.

*** Running Minerva The main/best way to run Minerva is with the "start-go-minerva.sh" script, found in the [[https://code.google.com/p/owltools/][OWLTools checkout]] (in owltools/MolecularModelServer/bin). The only input parameter is the root directory for the local GO-SVN checkout.

In typical setup for running Minerva, you will have to:

- Build Minerva (only required after updates): build-server.sh
- Start server: start-go-minerva.sh /path/to/GO-trunk

*** Running Noctua and Barista The most important part of getting familiar with the setup is understanding the options in the Makefile. As well, besides the environmental variables, there are a couple of important files for configuration:

- config/app.json
- config/users.json

These are the backend mapping configuration and user authorization
files respectively.

Also, remember that Noctua cannot be run successfully until both
Minerva and Barista are running.

Also remember that Barista and Noctua are designed to be very
flexible about where they are pointing, so that configurations
like cloud -> server -> another server and perfectly fine. It is
important to look at the initial output of all the server to know
who that are trying to talk to and where they are--it is all
configurable, you just need the right option.

**** Local testing make start-barista make start-noctua **** Local testing with copies of BBOP JS and BBOPX JS make start-barista-dev make start-noctua-dev **** OpenShift (currently noctua.js only) git push openshift master (currently at: http://go-genkisugi.rhcloud.com/) **** Heroku (currently noctua.js only) TODO