Releases: AdametherzLab/webhook-spark
Releases · AdametherzLab/webhook-spark
v0.6.4
v0.6.3
add support for generating QR codes as images or ASCII art
v0.6.2
implement more detailed error logging and reporting
v0.6.1
add more robust input validation for all chart types
v0.6.0 — Deep Viz
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 entriesbrailleSpark()— Hi-res Braille Unicode sparkline (2x4 dot resolution)candlestick()— OHLC financial charts with bull/bear renderingtimeline()— Gantt-style project scheduling chartsboxDiagram()— Box-and-arrow flowcharts (horizontal/vertical, 4 border styles)multiSpark()— Multi-series aligned sparklines for metric comparisondiffBar()— Diverging butterfly bar chart for before/after comparisonmatrix()— LED dot-matrix display with 3x5 font (blocks/dots/braille styles)
Stats
- 35+ functions, 195 tests, zero dependencies
- Live demo: https://che0md.tech/webhook-spark
v0.5.0 — Social Media Content Engine
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
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 moodskaomojiStatus(value, max)— map numeric values to mood faces via thresholdskaomojiAll()andkaomojiThemes()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
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.summarystring. 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
Initial release — Send minimalist homelab alerts with ASCII sparklines to Discord/Slack.