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

@fugazi/webclient

v1.1.21

Published

web based terminal application for executing local and remote commands

Downloads

64

Readme

fugazi.io

A web based terminal application for executing local and remote commands.
The latest version of the terminal can be found here: http://fugazi.io.

Here's a short introduction video:
short introduction

Documentation can be found here: https://fugazi-io.github.io.
You can contact us here: https://gitter.im/fugazi-io/Lobby.

Short example

Fugazi isn't a regular terminal, it won't execute the commands which you are used to.
In order to execute commands you need to load modules into the client, these modules will define the commands which can be executed.

The client comes with a some built-in commands, and here's a short example of what you can do with it:

In the fugazi terminal try to execute:

get "https://jsonplaceholder.typicode.com/posts/1"

This command will make an http GET request to that url and output the response. (you can use other urls of course, as long as they support CORS).
If you only want to get the data from the response you can do so like this:

r = (get "https://jsonplaceholder.typicode.com/posts/1")
extract data from $r 

Here we used a variable to hold the response and then extracted the data part from it, but you can do it in one line using nested commands:

extract data from (get "https://jsonplaceholder.typicode.com/posts/1")

The only problem left though is that the return value is a string and not a map. This happens because the response doesn't have json content type.
It's easy to go around it though:

r = (get "https://jsonplaceholder.typicode.com/posts/1")
d = (extract data from $r)
json parse $d

Or, in one line:

json parse (extract data from (get "https://jsonplaceholder.typicode.com/posts/1"))

Installation

The client requires no servers, other than hosting the static files (scripts, styles, etc).
To run locally install the npm package:

npm install @fugazi/webclient

Then build the scripts:

npm run transpile

After the compilation ended, serve the files:

npm run serve

That's it, you have fugazi locally served, open http://localhost:3330/index.hml in your browser.

Development

If you want to develop with/for fugazi then you better clone this repo.
Here's how to run it locally:

  1. Clone the repo and change into the directory
  2. Install the dependencies: $ npm install
  3. Run $ npm run dev (read the dev npm script in package.json for more information)
  4. Open the provided URL in the browser.

Features

  1. Executing of local (js) commands and remote (HTTP) commands
  2. Remote commands can be issues directly if the server supports CORS, or a proxy frame can be hosted in the server to support non-CORS
  3. Remote authentication (currently only basic auth is supported)
  4. Commands syntax is determined by the command author
  5. Type validation
  6. Composing of new types
  7. Commands suggestions
    1. Press TAB to open the suggestions box
    2. Press ESC to close the suggestion box
    3. While open, TAB can be used to switch to selection mode and back to input mode
    4. While in selection mode, press ENTER to select a suggestion
  8. Move in the command history (by pressing the up & down arrows)
  9. Search for command in history (press CTRL + R then start typing and ENTER to select, ESC to close)

More documentation

There's a new documentation site here: https://fugazi-io.github.io, this is the old version:

Components

Descriptors

Builtin Components

Connectors

Examples

Getting help

Use the issues for any bug, request, question.
Or you can find us in our gitter

Contribution

We're looking for more help, if you're interested find us in this gmail.com address: terminal.fugazi.io