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 🙏

© 2026 – Pkg Stats / Ryan Hefner

solvebio

v1.2.1

Published

SolveBio Javascript client

Readme

Build Status

solvebio-js

SolveBio Javascript SDK

Features

  • Full SolveBio Api binding
  • Works in NodeJS and in the browser
  • Support of promises
  • Uses Angular, jQuery, Q or native promises if available
  • Special build solvebio-promises.js includes BlueBird promises API
  • Support pagination

Usage

Install

npm

npm install solvebio

Then require('solvebio') in your code.

bower

bower install solvebio

Then add a <script> to your index.html:

<!-- If you already have a promise library loaded, just include solvebio.js -->
<script src="/bower_components/solvebio/dist/solvebio.js"></script>

<!-- If you don't include solvebio-promises.js. This version is bundled with the BlueBird promise library. -->
<script src="/bower_components/solvebio/dist/solvebio-promises.js"></script>

Initialize SolveBio

Initialize SolveBio Javascript client with your Oauth token. Please contact us at [[email protected]](mailto:[email protected]?subject=[Oauth token request]) to get your Oauth token.

var SolveBio = require('solvebio');

SolveBio.init({
  accessToken: <YOUR OAUTH TOKEN>
});

Retrieve a specific dataset

var dataset = SolveBio.Dataset('ClinVar/Variants');

dataset.retrieve()
  .then(function(response) {
    // Your code goes here...
  });

Create filters

var filter1 = SolveBio.Filter({
    gene_symbol: 'BRCA1'
  }), 
  filter2 = SolveBio.Filter({
    gene_symbol: 'BRCA2'
  });
  
var filter = filter1.or(filter2);

Apply Filters and Retrieve query results

dataset.filter(filter)
  .then(function(response) {
    // Your code goes here...
  });

Retrieve a list of paged results

var Promise = require('es6-promise').Promise;

function loadAll(promise) {
  var deferred = Promise.defer(),
    data = [];
    
  load(promise);
  
  return deferred.promise;
  
  function load(promise) {
    promise
      .then(function(response) {
        data = data.concat(response.data);
        if(response.next) {
          load(response.next());
        }
        else {
          deferred.resolve(data);
        }
      });
  }
}

loadAll(SolveBio.Dataset().all())
 .then(function(datasets) {
   // Your code goes here...
 });

Example

An HTML example is provided at examples/simple.html. You can try it by cloning the repository and opening the file in your browser.

Developing

Building from sources

First install Node/NPM then do this:

sudo npm install -g grunt-cli

Then:

npm install
grunt build

Contributing to solvebio-js

Use the build:dev task:

npm install
grunt build:dev