posthtml-inline-favicon
April 20, 2024 ยท View on GitHub
posthtml-inline-favicon is a PostHTML plugin to inline favicons.
Before:
<head>
<link rel="icon" href="favicon.ico" />
</head>
After:
<head>
<link rel="icon" type="image/png" href="data:image/png;base64,..." />
</head>
Install
# npm
npm i -D posthtml-inline-favicon
# pnpm
pnpm add -D posthtml-inline-favicon
# Yarn
yarn add -D posthtml-inline-favicon
Usage
const fs = require("fs");
const posthtml = require("posthtml");
const { inlineFavicon } = require("posthtml-inline-favicon");
const html = fs.readFileSync("./index.html");
posthtml()
.use(inlineFavicon())
.process(html)
.then((result) => fs.writeFileSync("./after.html", result.html));
Options
By default, the plugin assumes that the file to process is in the same directory as the posthtml script. If not, specify the relative path to the html file in the options:
const fs = require("fs");
const posthtml = require("posthtml");
const { inlineFavicon } = require("posthtml-inline-favicon");
const html = fs.readFileSync("./public/index.html");
posthtml()
.use(inlineFavicon({ path: "public" }))
.process(html)
.then((result) => fs.writeFileSync("./after.html", result.html));
Example
Contributing
See the PostHTML Guidelines.