postcss-fontsource-url

0.1.0 • Public • Published

postcss-fontsource-url

NPM version License

PostCSS plugin that transforms @fontsource src CSS properties values to point URLs to your own custom directory.

Installation

npm add --save-dev postcss-fontsource-url

Usage

Move the @fontsource fonts to your public directory:

📁 dist
└── 📁 assets
    └── 📁 fonts
        ├── roboto-mono-latin-400-normal.woff
        └── roboto-mono-latin-400-normal.woff2
/* stylesheet.css */
@import '@fontsource/roboto-mono/400.css';
// postcss.config.mjs
import postcssFontsourceUrl from 'postcss-fontsource-url';

export default {
  plugins: {
    postcssFontsourceUrl({directory: '/assets/fonts'}),
  },
};

Alternative

If you want a more complex solution for the problem, you can use postcss-url:

// postcss.config.mjs
import postcssUrl from 'postcss-url';

export default {
  plugins: {
    postcssUrl({
      url(asset) {
        // Rewrite @fontsource fonts URLs to use the `/assets/fonts` folder
        // instead of the default `./files/` path.
        if (asset.url.startsWith('./files/')) {
          return `/assets/fonts/${asset.url.slice('./files/'.length)}`;
        }

        return asset.url;
      },
    }),
  },
};

Package Sidebar

Install

npm i postcss-fontsource-url

Weekly Downloads

9

Version

0.1.0

License

MIT

Unpacked Size

4.47 kB

Total Files

4

Last publish

Collaborators

  • mondeja