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

pilotfish-api

v0.1.0

Published

Nodejs server side api for Pilotfish, a toolkit for improving user experience

Downloads

2

Readme

Build Status

Warning

This code is not production ready. Pilotfish developers are practicing README driven development, so this documentation is being written before the code is actually done. :) If the project interests you and you would like to be notified when the first release is ready, let us know. TODO: Link to newsletter signup.

About

This is the API for the pilotfish user experience platform, that supports any plugins that require a server side component. It also supports the pilotfish-console, which is a thick client frontend for all the data in this api.

Pilotfish has a platform-as-a-service that runs at api.pilotfish.io (recommended), and it runs this code in a reliable, scalable environment. If you would like to run the API in your own environment, see Running the API on your own.

Using the API

Quick examples

For full examples, see the tests or the documentation

Entry points

Scribbled quickly, to paint a picture of what kinds of things we might support:

Core
  • /api/v1/publisher
    • basic info
    • config for what modules they want enabled (input via the)
  • /api/v1/events (everything you would need to support Mix Panel or Kiss Metrics)
    • clicks
    • views
    • enter
    • exit
    • login
    • error
    • register
    • custom defined
      • events
      • events with arbitrary data
      • goals/success/failure (for funnel analysis)
  • /api/v1/events/query - get stats back on the above
Console
  • /api/v1/user
    • store arbitrary key / values for that user - publisher can do whatever they want with it to personalize data.
    • user auth
    • Singly?
Plugins
  • /api/v1/plugins/sendFeedback
  • /api/v1/plugins/surveys
  • /api/v1/plugins/ratings
    • set
    • get
  • /api/v1/plugins/captcha
  • /api/v1/plugins/jslog (capture javascript errors)

Auth

Oauth2 and API key?

Running the API on your own

Requirements

  • node >= 0.8?

Install

git clone https://github.com/pilotfish/pilotfish-api.git 
cd pilotfish-api
npm install

Running

It's recommended that you run this with a watchdog service such as forever or supervisord.

Testing

There is a full test harness that exercises all of the functionality of the API. npm test will start the server, issue http requests, and check the results for the expected behavior. These tests will be run upon every commit with travis-ci (see build status icon at the top)

More information

  • The docs
  • Google Group
  • File issues on github