emotettv
TypeScript icon, indicating that this package has built-in type declarations

1.0.2 • Public • Published

emoteTTV

npm install size downloads snyk snyk

  • Supports Twitch, BTTV, FFZ and 7TV emotes and badges
  • Dead simple API — works seamlessly with TMI.js and Twurple
  • Works out of the box — no authentication needed
  • Flexible outputs to fit every need

Demo

Checkout this demo app to see emoteTTV in action! ⛹️

Basic usage

import { parseEmotes } from "emotettv";

const parsed = await parseEmotes("Hello emotettv! D:");
console.log(parsed.toHTML());
// > Hello emotettv! <figure><img src="..." alt="D:" /></figure>

If you're using TMI.js, you can pass your tags directly to emoteTTV:

import { parseBadges, parseEmotes } from "emotettv";
import tmi from "tmi.js";

const client = new tmi.Client({
  channels: ["doceazedo911"],
});

const options = {
  channelId: "98776633",
};

client.connect();
client.on("message", async (channel, tags, text, self) => {
  const badges = await parseBadges(tags.badges, tags.username, options);
  const message = await parseEmotes(text, tags.emotes, options);
  const htmlBadges = badges.toHTML();
  const htmlMessage = message.toHTML();
  const displayName = tags["display-name"];
  document.body.innerHTML = `${htmlBadges} ${displayName}: ${htmlMessage}`;
});

Docs

Check more examples and API reference on the emoteTTV docs.

License

The emoteTTV project is licensed under the GPLv3 License.

Readme

Keywords

none

Package Sidebar

Install

npm i emotettv

Weekly Downloads

51

Version

1.0.2

License

none

Unpacked Size

157 kB

Total Files

11

Last publish

Collaborators

  • doceazedo