slack-progress-bar
v0.1.0
Published
TypeScript port of laserlemon/slack_progress_bar with CLI and emoji generator
Readme
Slack Progress Bar
A TypeScript port of laserlemon/slack_progress_bar. Generates Slack progress bar strings made of emoji and can generate the emoji image assets via ImageMagick.
Requirements
- Node 18+
- pnpm (repo is pinned via
packageManager) - ImageMagick available on
PATH(for the image generator)
Install & build
pnpm install
pnpm buildFor watch mode during development:
pnpm devCLI
After building, generate emoji images:
pnpm generate --output ./emojiOptions:
--colors:p:6f42c1ff,b:0366d6ff,...(defaults match the Ruby library)--prefix: emoji name prefix (defaultpb)--output: directory for generated PNGs (default./)
Library usage
import { SlackProgressBar, configure } from "slack-progress-bar";
configure((c) => {
c.prefix = "pb";
c.letters = ["r", "g", "b", "w"];
c.aliases = { red: "r", green: "g", blue: "b", white: "w" };
});
const bar = new SlackProgressBar({
counts: { blue: 3, green: 2, red: 1 },
total: 10,
size: 14,
rounded: true,
});
console.log(bar.toString());Exports
SlackProgressBar— generate the emoji stringconfigure/config— mutate or read global configurationGenerator— generate emoji PNGs (requires ImageMagick)
Notes
- Default colors and behavior follow the upstream Ruby gem.
