npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@jaisocx/email-html-inliner

v1.3.7

Published

``` npm install @jaisocx/email-html-inliner ```

Readme

Inliner To Send Html Email

npm install @jaisocx/email-html-inliner

Status

Ready to use since the 06-th of May in the Year 2025.

The aim of the setup

The webmail apps due to security reasons do stipping out certain markup from the email messges sent with Content-Type text/html.

The package here is to solve the workaround to adjust somehow to the rules of webmail apps providers, email messages before sending they.

QA Notice

Tested with Gmail, Outlook, Protonmail, iCloud, AOL, Yahoo.

Notices

QA

My email client by my smtp relay impl could not access GMX due to some incombatibility of my smtp relay, unfortunately. I could not adjust the email message format according to exception message in the GMX response. Maybe any day later. This package was not tested with the GMX webmail app.

The issues were NOT solved: padding: <not-zero>; {max|min-}width: 100%;

The AOL and Yahoo Webmail apps strip out the CSS property box-sizing, and the default rendering rule in browsers is the box-sizing: padding-box;.

Unfortunately, I could not find the workaround, when a html node has CSS padding set, and the contents have to be set width: 100%;. In this option the look and feel is not rendered the right way. The contents are overflowing, and when designed the email message with CSS box-sizing: border-box; the Sites Dev could not know this issue, neither could notice this issue in other webmail apps.

Usage

import { EmailHtmlInliner } from "@jaisocx/email-html-inliner";

function inlineText() {
  let inliner = new EmailHtmlInliner();
  let cssHtmlPackage = inliner.cssHtmlPackage;

  // set these values before sending,
  // or omit when developing the email message.
  let baseUrlToReplace = "./../../../cdn/www/media/images/";
  let baseUrlReplacedWith = "https://my-cdn.example.com/www/media/images/";

  let inlineText = inliner.inline ( 
    document,
    "html", 
    inliner.constants.stylesPropsToCheck, 
    baseUrlToReplace, 
    baseUrlReplacedWith 
  );

  let textHtmlNode = this.htmlDocument.getElementById("inlinetext");
  textHtmlNode.innerHTML = cssHtmlPackage.escapeHTML( inlineText );
}