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

zsh.js

v2.3.2

Published

create a interative terminal into any div

Readme

zsh.js

An almost functional zsh terminal in any div

Instalation

You can install via npm

$ npm install zsh.js

or via bower

$ bower install zsh.js

Basic Usage

Include the script and style

<link href="path/to/zsh.min.css" rel="stylesheet" />
<script src="path/to/zsh.js"></script>

A global variable ZSH will be available, but require is also available - ~~if you want to add a custom command or rack around~~

var ZSH = require('zsh.js');
var FileSystem = require('zsh.js/lib/fs');
var CommandManager = require('zsh.js/lib/command-manager');

And initialize it, passing an a div id to ZSH.create

ZSH.create('container');

Web Component

You can also include zsh as a web component:

<link rel="import" href="path/to/zsh.js/zsh-terminal.html"/>

<zsh-terminal></zsh-terminal>

An example is also available

Features

~~Right now you can use the follow shell functions:~~

To check the current implemented programs just run ls /usr/bin or check the contents of lib/fs/usr/bin

And the functionalities

  • Autocomplete for commands
  • Syntax Highlight
  • Commands History

The other executable commands are just to show stuff about me... (since it was made for my personal website)

What I intend to implement next:

  • less
  • ~~auto completion for paths~~
  • ~~add support to pipe commands~~ Better command parsing
  • ~~add the binds for tmux, some functionality is built but not accessible~~
  • copy and paste
  • ~~C-c to clear line~~
  • vim
  • ~~mkdir~~
  • add help for methods

Contributing

Updated

Executable files are now stored inside the actual file system folder and can be viewed within the terminal. The path is not customizable yet, so all the commands are in src/lib/fs/usr/bin/*.js

Notice that: It is still possible to add commands through the CommandManager, but they are not automatically required, but could work if you are writing a plugin (example: tadeuzagallo.com/src/js/site-helpers.js)

~~Any .js file put inside src/js/lib/commands will automatically added on build, so feel free to add any program and drop it there.~~

The most complex program so far is mv.js... Check it out to if you want to implement a custom command.

If you need help just get in touch!

Contact

You can:

Any feedback or help is appreciated! :)

License

Terminal.js is available under MIT licence. See the LICENCE file for more info.