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 🙏

© 2026 – Pkg Stats / Ryan Hefner

rollup-plugin-tidy-templates

v1.0.0

Published

A rollup plugin to transform template literal tags

Readme

rollup-plugin-tidy-templates

A Rollup plugin that removes specific tagged template expressions from your code. This can be useful for eliminating unnecessary template literals, optimizing your code, or stripping out certain types of templates during bundling.

Installation

You can install rollup-plugin-tidy-templates using npm or yarn:

npm install --save-dev rollup-plugin-tidy-templates

or

yarn add --dev rollup-plugin-tidy-templates

Usage

To use rollup-plugin-tidy-templates, include it in your Rollup configuration file.

import removeTemplateTags from "rollup-plugin-tidy-templates";

export default {
  input: "src/index.js",
  output: {
    file: "dist/bundle.js",
    format: "esm",
  },
  plugins: [
    removeTemplateTags({
      include: "src/**/*.js", // Optional files to include
      exclude: "node_modules/**", // Optional files to exclude
      tags: ["myCustomTag"], // Optional tags to remove from the template literals (default: all)
      parserOptions: {
        // Optional parser options for Babel
        plugins: ["jsx"],
      },
      generatorOptions: {
        // Optional generator options for Babel
        retainLines: true,
      },
    }),
  ],
};

Options

include (string | string[])

Files to include in the transformation. This uses Rollup's createFilter to match the files. By default, it includes all files.

exclude (string | string[])

Files to exclude from the transformation. Like include, this uses Rollup's filter functionality. You can exclude files or directories.

tags (string[])

An array of tag names to remove from the tagged template expressions. If this array is empty, all template tags will be removed.

  • Default: [] (removes all template tags)

parserOptions (Object)

Additional options to configure Babel's parser. This object will be merged with the default options.

  • Default: {}

For example, you can pass in plugins to enable JSX or TypeScript support:

parserOptions: {
  plugins: ['jsx', 'typescript'],
}

generatorOptions (Object)

Additional options to configure Babel's generator. This object will be passed directly to Babel's generate function.

  • Default: {}

You can use this to retain line numbers or customize how the output code is generated.

Example

Consider this example code:

const x = html`<div>Hello World</div>`;
const y = markdown`
# Markdown Template
`;

console.log(x);
console.log(y);

Using the plugin with tags: ['html'] will remove the html tagged template:

const x = `<div>Hello World</div>`;
const y = markdown`
# Markdown Template
`;

console.log(x);
console.log(y);

License

MIT License. See LICENSE for more details.