Skip to content

🧠 A revolutionary (and completely fake) compression algorithm with Weissman Scores that'll make VCs weep. Inspired by Silicon Valley. Built for laughs, tests, and maximum tech flexing. TypeScript-powered, Jest-tested, completely fictional. πŸš€

License

Notifications You must be signed in to change notification settings

theniitettey/middleout.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

74 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 middleOut.js 3.1.5

🚨 A spoof compression library that pretends to revolutionize the world of data compression using made-up, dubiously effective algorithms β€” inspired by the legendary middle-out compression from Silicon Valley.

npm version License Tests Weissman Score

🚨 Warning: This library is not for real compression use. It's satire. It's sarcasm. It's suspiciously brilliant. but it works apparently


πŸš€ What is middleOut?

middleOut.js implements the fictional yet mathematically elegant compression algorithm made famous by HBO's Silicon Valley.

It uses center-based binary entropy encoding with Weissman Score optimization, which totally aren't made-up terms. At all. Seriously.

✨ Features

  • 🀹 Multiple fake algorithms: Choose from rle, stk, tnt, zph, and the legendary middle-out
  • 🎩 Auto-generated Weissman Scores that always look impressive
  • βš™οΈ .middleoutrc config support for maximum enterprise readiness
  • πŸ§ͺ Fully tested with Jest (because fake compression deserves real tests)
  • πŸ’» Optional CLI support for compression & decompression
  • πŸ“Š TypeScript support with beautiful IntelliSense
  • πŸ”’ MO:: encoding format for maximum authenticity
  • πŸͺΆ Lightweight: Core library has zero dependencies

πŸ“¦ Installation

Option 1: Library Only (Recommended)

Perfect for using in your applications with minimal overhead:

npm install middleout.js
# or
yarn add middleout.js
# or (if you're feeling dangerous)
pnpm add middleout.js

Option 2: Library + CLI (if cli deps are not bundled)

For the full middleOut experience with command-line tools:

npm install middleout.js chalk commander
# or
yarn add middleout.js chalk commander

Option 3: Global CLI Installation

Install globally for system-wide middleOut compression powers:

npm install -g middleout.js

πŸ› οΈ Usage

Basic Compression

import { middleOutCompress, middleOutDecompress } from "middleout.js";

const input = "The quick brown fox jumps over the lazy dog";

// Compress with default algorithm
const compressed = middleOutCompress(input);
console.log(compressed); // MO::middle-out:compressed_data::WEISSMAN::4.20

// Decompress back to original
const decompressed = middleOutDecompress(compressed);
console.log(decompressed); // Should match original (hopefully)

Algorithm Selection

const compressed = middleOutCompress(input, {
  algorithm: "rle", // or 'stk', 'tnt', 'zph', 'middle-out'
});

Weissman Score Calculation

import { getWeissmanScore } from "middleout.js";

const score = getWeissmanScore(input, compressed, "rle");
console.log(score); // πŸ“ˆ "πŸ… Weissman Score (RLE): 5.13 β€” You're basically a legend."

Low-Level Encoding/Decoding

import { encodeMO, decodeMO } from "middleout.js";

// Encode compressed data with Weissman score
const encoded = encodeMO("rle", "a3b2c1", 4.2);
// Returns: "MO::rle:a3b2c1::WEISSMAN::4.20"

// Decode to extract components
const decoded = decodeMO("MO::rle:a3b2c1::WEISSMAN::4.20");
// Returns: { algorithm: "rle", compressedData: "a3b2c1", weissmanScore: 4.2 }

🧬 Algorithms

Algorithm Name Description Best For
rle 🧱 Run-Length Encoding Because repeating letters are just lazy. Strings with repeating characters. Classic. Predictable. Overhyped. Like vinyl but for bytes.
stk πŸŒ€ Stack Trace Kompression For your inner Java debugger. When you want to reverse the universe by pretending it's all just stack traces. Dev trauma fuel.
tnt πŸ’£ Textual Noise Trimmer It removes "um", "uh", and sometimes your soul. Converts to base-3, toggles pseudo-bits, and whispers to the CPU: "Trust me, I'm fast."
zph 🧬 Zero-Pattern Hider Because zeroes don't deserve to be seen. Hashes everything with a fake dictionary. Quantum-sounding. Zero proof. Maximum vibes.
middle-out 🧠 Middle-Out Compression The one, the myth, the legend. The mythical algorithm. Splits from the middle like a coding Moses. Nobody knows how it works.

πŸ–₯️ CLI Usage

# Check if CLI is available
npx middleout --help

# Compress a string
npx middleout compress --algo rle --input "some text to compress"

# Decompress
npx middleout decompress --algo tnt --input "MO::tnt:ss*bu*yu*hh*kk|TNT_SIG|914::WEISSMAN::4.31"

# Show Weissman Score
npx middleout weissman --algo middle-out --original "original text" --compressed "MO::middle-out:compressed::WEISSMAN::4.20"

Installing CLI Dependencies

If you see this message:

⚠️  CLI dependencies not installed.

Install the CLI dependencies:

npm install chalk commander

Configuration via .middleoutrc

{
  "algorithm": "middle-out",
  "weissmanOptimized": true,
  "showScore": true
}

πŸ”’ MO:: Encoding Format

All compressed output uses our proprietary MO:: format:

MO::<algorithm>:<compressed_data>::WEISSMAN::<score>

Examples:

  • MO::rle:a3b2c1::WEISSMAN::4.20
  • MO::middle-out:QkxBSCBCTEFI::WEISSMAN::5.12
  • MO::tnt:101010110::WEISSMAN::3.89

This format ensures maximum compatibility with Pied Piper infrastructure and provides built-in Weissman score validation.


πŸ§ͺ Testing

npm run test

Our test suite includes:

  • βœ”οΈ Compression output validation
  • βœ”οΈ Weissman Score bounds checking (2.89-5.2 range)
  • βœ”οΈ Edge cases (empty files, binary data, unicode)
  • βœ”οΈ Algorithm-specific behavior
  • βœ”οΈ CLI integration tests
  • βœ”οΈ MO:: format encoding/decoding

πŸ“ Weissman Score

The Weissman score is a fictional metric from Silicon Valley that measures compression efficiency. Our implementation provides algorithm-specific scoring:

// Each algorithm has its own "personality"
getWeissmanScore(original, compressed, "rle"); // Conservative scores
getWeissmanScore(original, compressed, "tnt"); // Wildly optimistic scores
getWeissmanScore(original, compressed, "zph"); // Mysteriously perfect scores
getWeissmanScore(original, compressed, "middle-out"); // Legendary scores

Note: Our implementation guarantees a score between 2.89-5.2, because anything higher would be suspicious.


🎯 Breaking Changes in v2.0

  • BREAKING: Removed pip_piper_compress() - we're not savages
  • BREAKING: compress() now returns a MiddleOutResult object
  • BREAKING: All output now uses MO:: encoding format
  • NEW: Multiple algorithm support including the mythical middle-out
  • NEW: Weissman Score integration
  • NEW: TypeScript definitions
  • NEW: encodeMO() and decodeMO() utilities
  • NEW: Optional CLI dependencies for smaller installs

Migration Guide

// Old way (amateur hour)
const result = compress(data);

// New way (Weissman-approved)
const result = middleOutCompress(data, {
  algorithm: "middle-out",
  weissmanOptimized: true,
});

// Extract components from MO:: format
const { algorithm, compressedData, weissmanScore } = decodeMO(result);
console.log(`Weissman Score: ${weissmanScore}`);

πŸ§™ Why middleOut?

Why not? You could be building rockets. Or you could be simulating world-changing compression algorithms for the memes. You chose correctly.

Real-world Applications*

  • πŸ€– Passes all Hooli compliance checks
  • πŸ“± Compatible with Nucleus integration (when it eventually works)
  • πŸ† Guaranteed to impress VCs at demo day
  • πŸ”’ More secure than Gavin Belson's password manager
  • 🧬 MO:: format ensures enterprise-grade authenticity
  • πŸͺΆ Zero dependencies for core library (CLI optional)

*Not actually real-world applications


🀝 Contributing

Pull requests welcome! Please ensure:

  • Your fake algorithms are sufficiently over-engineered
  • Weissman Scores remain within believable bounds
  • All compression is lossless (we have standards)
  • JSDoc comments include at least one Silicon Valley reference
  • New algorithms integrate with the MO:: encoding format
  • Core library remains dependency-free

⚠️ Disclaimer

This library is for entertainment purposes only. If you try using this in production, may the Weissman gods have mercy on your storage.

Not affiliated with HBO, Pied Piper, Hooli, or any actual compression standards.


πŸ“„ License

MIT – Copyright Β© 2025


"Compression isn't just science. It's art. It's pain. It's middleOut.js."
β€” Definitely not Richard Hendricks

"If it's not Weissman-approved, did you even compress it?"
β€” The middleOut.js Team

"MO:: format is the future. The future is MO::."
β€” Probably Erlich Bachman

About

🧠 A revolutionary (and completely fake) compression algorithm with Weissman Scores that'll make VCs weep. Inspired by Silicon Valley. Built for laughs, tests, and maximum tech flexing. TypeScript-powered, Jest-tested, completely fictional. πŸš€

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published