html-to-slack
TypeScript icon, indicating that this package has built-in type declarations

0.3.6 • Public • Published

HTML to Slack

version npm downloads

A module to convert HTML strings to Slack blocks.

Installation

To install the package, use npm:

npm install html-to-slack

Or yarn:

yarn add html-to-slack

Usage

Example

import htmlToSlack from 'html-to-slack';

const html = `
  <h1>List of Items</h1>
  <ul>
    <li>First item</li>
    <li>Second item with a <a href="http://example.com">link</a></li>
    <li>Third item<ul><li>Nested item 1</li><li>Nested item 2</li></ul></li>
  </ul>
  <h2>Code Block Example</h2>
  <pre><code>function helloWorld() { console.log("Hello, world!"); }</code></pre>
`;

const blocks = htmlToSlack(html);
console.log(blocks);

Future improvement and known issues

This is a work in progress and a lot of things need to be done better. Here is a list of already known issues and improvements:

  • <p> tags that end with an inline tag do not end with a new line, but they should.
  • Inconsistency between <p> tags containing only illegal tags and empty <p> tags (see issue #8).
  • Improve readability for longer posts (see issue #4).

Contributing

We welcome contributions! Here are some ways you can help:

  1. Report bugs: If you find a bug, please open an issue.
  2. Suggest new features: If you have a feature request, please open an issue.
  3. Submit pull requests: If you want to contribute code, please submit a pull request.

Before submitting a pull request, please make sure to:

  • Fork the repository and create your branch from main.
  • Run npm install or yarn install to install dependencies.
  • Run the tests with npm test or yarn test to ensure all tests pass.
  • Add tests to cover your changes.
  • Ensure your code lints with npm run lint or yarn lint.

License

This project is licensed under the GPL-3.0 License. See the LICENSE file for more details.

Readme

Keywords

Package Sidebar

Install

npm i html-to-slack

Weekly Downloads

134

Version

0.3.6

License

GPL-3.0

Unpacked Size

79.2 kB

Total Files

33

Last publish

Collaborators

  • matteodf