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

faas

v0.7.2

Published

Faas.io blind proxy real-time API pipeline.

Downloads

299

Readme

Faas

Faas is a cloud service that provides a blind proxy and secure real-time pipeline to reach APIs running on sensitive systems behind a firewalled network or closed system without requiring any inbound ports or web servers to be exposed to the internet.

This npm module provides the libraries needed to serve an API from a client system.

Installation & Setup

Quick-Start Demo: Node.js

  1. In your project directory, install the faas library:

    npm install faas
  2. Generate a simple demo startup script and API files:

    ./node_modules/faas/demos/node/generate.sh
    
    # OR `npm root`/faas/demos/node/generate.sh

    This creates the file ./faas_demo_start.sh and the faas_demo_apis directory.

  3. Start your API server:

    ./faas_demo_start.sh
  4. Open a browser to https://api.faas.io/demo and watch your API server in action!

Quick-Start Demo: Java

  1. In your project directory, install the faas library:

    npm install faas
  2. Generate a simple demo startup script and API files:

    ./node_modules/faas/demos/java/generate.sh
    
    # OR `npm root`/faas/demos/java/generate.sh

    This creates the file ./faas_demo_start.sh, and the faas_demo_apis directory.

  3. Start your API server:

    ./faas_demo_start.sh
  4. Open a browser to https://api.faas.io/demo and watch your API server in action!

Quick-Start Demo: Ruby

  1. In your project directory, install the faas library:

    npm install faas
  2. Generate a simple demo startup script and API files:

    ./node_modules/faas/demos/ruby/generate.sh
    
    # OR `npm root`/faas/demos/ruby/generate.sh

    This creates the file ./faas_demo_start.sh, and the faas_demo_apis directory.

  3. Start your API server:

    ./faas_demo_start.sh
  4. Open a browser to https://api.faas.io/demo and watch your API server in action!

Quick-Start Demo: HTTP Proxy

  1. In your project directory, install the faas library:

    npm install faas
  2. Generate a simple demo startup script and API files:

    ./node_modules/faas/demos/http-proxy/generate.sh
    
    # OR `npm root`/faas/demos/http-proxy/generate.sh

    This creates the file ./faas_demo_start.sh, and the ./app.js demo app.

  3. Start your API server:

    ./faas_demo_start.sh
  4. Open a browser to your demo url (https://faasdemo-XXXXXXXX.http-proxy.faas.io/) and watch your proxy in action!


Intel Edison

Edison Quick-Start & Demo

  1. Configure your Edison to connect to your WiFi network.

  2. Install faas from a terminal on your Edison:

    npm install faas
  3. Generate a simple demo startup script and API files:

    ./node_modules/faas/demos/edison/generate.sh
    
    # OR `npm root`/faas/demos/edison/generate.sh

    This creates the file ./faas_demo_start.sh and the faas_demo_apis directory.

  4. Start the API on your Edison by running:

    ./faas_demo_start.sh
  5. Open a browser to https://api.faas.io/demo and enter your device key. You should now be able to turn the LED on your board on and off. That's it!

    Tip: The "DEVICE KEY" was printed to your screen when you started the command in Step 3. This is your Edison serial number, which can also be found on a physical label on your Edison, or in the file /factory/serial_number.

Extra Credit: Start on boot and restart on error

To enable your API to start whenever you boot your Edison (without needing to log in to it), you can run the following:

./node_modules/faas/demos/edison/install_service.sh

This does a few things:

  1. Copies the demo apis to /home/root/faas_api.

  2. Installs faas there (npm install faas).

  3. Creates a script to run your api at /home/root/faas_api/run_faas_api.sh.

  4. Creates a systemd service file to point to your script at /lib/systemd/system/faas.service.

  5. Enables this service to start automatically on boot via systemctl enable faas.


For more info, go to faas.io