Skip to content

Releases: AdametherzLab/webhook-spark

v0.6.4

08 Mar 07:00

Choose a tag to compare

add support for generating QR codes with custom colors

v0.6.3

08 Mar 03:13

Choose a tag to compare

add support for generating QR codes as images or ASCII art

v0.6.2

06 Mar 20:24

Choose a tag to compare

implement more detailed error logging and reporting

v0.6.1

06 Mar 15:41

Choose a tag to compare

add more robust input validation for all chart types

v0.6.0 — Deep Viz

05 Mar 07:44

Choose a tag to compare

10 New Visualization Functions

  • tree() — ASCII tree/hierarchy with 4 styles (ascii/rounded/bold/double)
  • progressBar() — Multi-step CI/CD pipeline with 4 styles (line/dots/blocks/arrows)
  • calendarHeatmap() — GitHub-style contribution grid from date-indexed entries
  • brailleSpark() — Hi-res Braille Unicode sparkline (2x4 dot resolution)
  • candlestick() — OHLC financial charts with bull/bear rendering
  • timeline() — Gantt-style project scheduling charts
  • boxDiagram() — Box-and-arrow flowcharts (horizontal/vertical, 4 border styles)
  • multiSpark() — Multi-series aligned sparklines for metric comparison
  • diffBar() — Diverging butterfly bar chart for before/after comparison
  • matrix() — LED dot-matrix display with 3x5 font (blocks/dots/braille styles)

Stats

v0.5.0 — Social Media Content Engine

05 Mar 06:30

Choose a tag to compare

What's New

Social media content generation and posting — turn your metrics into viral #BuildInPublic posts.

socialFormat() — Platform-Aware Formatting

  • Auto-truncates to platform char limits: X (280), Bluesky (300), Mastodon (500), Threads (500), Instagram (2200), YouTube (5000)
  • Smart word-boundary splitting, hashtag appending, custom truncation markers

thread() — Smart Thread Splitter

  • Splits long text into numbered posts with paragraph → sentence → word fallback
  • Header/footer support, per-platform limits

buildInPublic() — Metric-to-Post Generator

  • Generates #BuildInPublic social posts from dashboard metrics
  • Includes sparklines, trend arrows, kaomoji mood faces, and hashtags
  • 5 kaomoji themes (classic, cats, bears, stars, minimal)
  • Perfect for indie hacker / SaaS daily updates

socialCaption() — Multi-Section Caption Builder

  • Build structured IG/YT captions with titled sections, emoji prefixes, CTA, and hashtags
  • Auto-truncates to platform limit

postToBluesky() — AT Protocol Posting

  • Post directly to Bluesky with just handle + app password
  • No OAuth complexity, zero deps, pure HTTP

postToX() — X/Twitter API v2 Posting

  • Full OAuth 1.0a HMAC-SHA1 signing using Node built-in crypto
  • Zero external dependencies

Stats

  • 31 new tests (94 total passing)
  • +975 lines across 7 files (new: src/social.ts)
  • Still zero dependencies

v0.4.0 — Kaomoji, Heatmaps, Tables, Histograms & Comparisons

05 Mar 06:21

Choose a tag to compare

What's New

5 features that make webhook-spark the most fun AND useful terminal/text visualization library on npm.

Kaomoji Mood System

  • kaomoji(mood, options?) — 5 themes (classic, cats, bears, stars, minimal) x 13 moods
  • kaomojiStatus(value, max) — map numeric values to mood faces via thresholds
  • kaomojiAll() and kaomojiThemes() helpers
  • Includes ᓚᘏᗢ (cats/happy) and ☆*:.。.o(≧▽≦)o.。.:*☆ (celebrating)

2D Heatmap

  • heatmap(data, options?) — GitHub contribution graph style, pure text
  • Row/column labels, custom shade characters, min/max override

Box-Drawing Tables

  • miniTable(rows, options?) — 4 border styles (single, double, rounded, none)
  • kvTable(entries) — quick key-value display
  • Column alignment, header separators, maxWidth truncation

Histogram

  • histogram(values, options?) — frequency distribution with configurable bins
  • Show counts or percentages, custom fill character

Side-by-Side Compare

  • compare(label1, val1, label2, val2, options?) — visual before/after
  • 3 modes: bars, spark (with sparklines), compact (single line)
  • Returns delta, percentage change, direction arrow

Stats

  • 33 new tests (63 total passing)
  • +977 lines across 6 files
  • Still zero dependencies, TypeScript first

v0.3.0 — LCD, IoT & AI Agent Features

05 Mar 06:04

Choose a tag to compare

New Features

  • gauge(value, max) — Progress/level gauge bar with custom fill chars, labels, and threshold alerts. Perfect for LCD battery displays, tank levels, task completion.
  • stats(values) — Summary statistics (min/max/avg/median/stdDev/percentiles) with a compact .summary string. Feed it to an LLM or print on line 2 of a 16x2 LCD.
  • sparkWithStatus(values, thresholds) — Threshold-aware sparkline returning ok/warning/critical status, emoji, and Discord embed color. Supports inverted mode (low = bad).
  • dashboard(metrics) — Multi-metric compact display. Full mode with sparklines, or compact mode for 20x4 LCDs and AI agent context windows.

Target Audiences

  • Homelab / DevOps (existing)
  • LCD / OLED hackers (16x2, 20x4, SSD1306 128x64)
  • DIY / IoT makers (sensor dashboards)
  • AI agent builders (compact data viz in system prompts)

Stats

  • 16 new tests (28 total passing)
  • ~150 lines of new functionality
  • Zero new dependencies

v0.1.0

05 Mar 01:13

Choose a tag to compare

Initial release — Send minimalist homelab alerts with ASCII sparklines to Discord/Slack.