Babel Plugin Transform Assets

Latest NPM Release NPM Downloads GitHub Repo stars

Transforms importing of asset files at compile time using Babel. This plugin removes the need to run your server code through Webpack module bundler when using loaders such as file-loader, url-loader and building isomorphic universal apps. Aids in creating a cleaner, maintainable build process at the cost of yet another Babel plugin.


This is a fork of babel-plugin-transform-assets upgraded to be compatible with the latest Webpack's file-loder, and to use the latest versions of all dependencies. For migration just prefix the plugin name with @dr.pogodin/ scopename in your package.json and Babel configs.


import file from '../file.txt';

will be transformed to

var file = 'file.txt?9LDjftP';

See the spec for more examples.


Babel v6 or higher.


npm install -D @dr.pogodin/babel-plugin-transform-assets


Via .babelrc


  "plugins": [
      ["@dr.pogodin/transform-assets", {
          "extensions": ["svg"],
          "name": "[name].[ext]?[sha512:hash:base64:7]"

Via Node API

require('babel-core').transform('code', {
    plugins: [
        ['@dr.pogodin/transform-assets', {
            extensions: ['svg'],
            name: '[name].[ext]?[sha512:hash:base64:7]',


Contributions are very welcome—bug fixes, features, documentation, tests. Just make sure the tests are passing.

© Dr. Pogodin Studio, 2018–2024 — ‌‌ — ‌Terms of Service