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

fbash

v2.1.0

Published

Terminal over Facebook Messenger, without continuously running browser instances.

Downloads

32

Readme

fbash

Terminal over Facebook Messenger, running continuously as a background process.

NPM

Photo

Installation and Setup

Install through npm.

npm install -g fbash

Running

fbash can be started using the command fbash. When it is initially run, it will prompt the user for an email and password.

These should be the same credentials used to log into Facebook. In subsequent runs, fbash will use a saved app state to log in.

$ fbash start
email: [email protected]
password: ****************
Started fbash.

In addition, all running fbash processes can be stopped with the following command.

$ fbash stop

Usage

After starting the script on your computer, you can access your terminal by messaging a command to yourself on Facebook. You can use most terminal commands through fbash. It will respond with @fbash followed by the standard output, standard error, or other errors. fbash does not allow using commands which require user interaction, such as vim.

fbash can also be accessed through normal chats (not just to yourself).

To use it in a chat that is not the chat with yourself, prefix the command with /fbash. For example, to run ls in another chat, use

/fbash ls

It will display this output in the chat from which the command was received.

Additional commands

  • sendfile <file_path>
  • savefile <file_path>
  • /set <setting> <value>
  • showcode <file_path> [language]
  • authorize and unauthorize (beta)

Details for each command can be found on the docs.

Changes as of latest version

  • Allows replacing periods to bypass Facebook's spam detection.
  • No longer requires sudo to run.

Note: fbash is not a truly stateful terminal; it cannot handle environment variables and other functionality associated with terminal state. The working directory is handled manually by parsing cd commands. Because of this, compound commands with a cd component will not function properly, and may cause unexpected errors.

How to Contribute

  • If you have an idea for a command which would be relevant and useful, please open an issue with the suggestion.
  • For the 'showcode' command, there is a hard-coded list of file extensions and corresponding languages. If you want a language to be added, please either open an issue with the language and file extension or create a pull request. The map of languages and file extensions can be found at src/utils/getFileType.js.