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

fcu

v1.0.0

Published

Filmos' Cipher Utility

Readme

A cmd based program which greatly simplifies breaking any kind of codes or making one by yourself. It's modular, which means you can add your own ciphers via json files. You can also visit our reddit or support this project.

Installation

You need to have both node and npm installed. Once that done just type npm i -g fcu into the cmd. The -g flag is very important, without it the program won't work at all.

Usage

If installed correctly you can just type FCU into the console (at any directory) and you should see the list of available commands.

FCU list

This command will display all installed ciphers, sorted by the type. Syntax: FCU l

Type is represented by an arrow from input type to output type. For example, Txt -> Img requires input in form of text, and will output data in form of an image (for example QR code works this way). If types are divided by commas it means that multiple inputs are required. If there is a ? before a type, it means it's a "background" input - it will be used in encoding, but won't be recovered in decoding.

E.D.L. (Estimated Data Loss) is also displayed next to each cipher. It indicates how much data (on average) can be lost due to using the cipher.

FCU encode/decode

The basic encoding/decoding command. Syntax: FCU e/d <cipher> <source> <target>

It will use provided input, encode/decode it using selected cipher and then save to the output path. If the command is used without <source> and <target> arguments it will display help for given cipher, with a list of all available flags. For text, input can be either a path to a .txt file or the text itself. Output path can also be left empty to display results directly in the console. For image, both input and output have to be a path to the image file.

For example, command FCU encode Rot13 -r 5 "Wow!" "file.txt" would input Wow!, encode it using Rot13 (with rot set to 5) cipher and then save it to file.txt.

In case of encode command, after encoding program will automatically decode the result and compare it to the input file. This way it can detect how much data was lost due to the use of the cipher.

FCU sequence encode/decode

This command will perform few encodings/decodings at once. Syntax: FCU s e/d <source> <target> [ciphers...]

The last argument should be a list of ciphers to be used (in proper order). Ciphers can be used with flags, but it requires both cipher name and all it's flag to be inside ", for example "Rot13 -r 5". This command also checks data loss, but instead of doing it for each cipher, it checks the whole sequence at once, making the results more precise.

FCU test

Runs diagnostic tests on a cipher. Syntax: FCU t <cipher> or FCU t all

Making your own ciphers

The package contains a very detailed documentation on how to make your own ciphers. It can also be opened using FCU doc.