Last Updated: October 29, 2021
· mrfoto

Include files from gem into Asset Pipeline

I've spent a good hour debugging why the .svg file from my swipebox gem wasn't being precompiled by the Rails Asset Pipeline. I'm still not sure why, because it works with .svg fonts but for some reason it didn't want to "grab" the swipebox-icons.svg file.

The way I solved is I added an initializer to my Engine class which adds all the images (just in case) to the config.assets.precompile setting:

module Swipebox
  class Engine < ::Rails::Engine
    initializer 'swipebox.assets.precompile' do |app|
      app.config.assets.precompile << %r(swipebox-[\w]+\.(?:png|svg|gif)$)

Hope it helps someone :)

Have a fresh tip? Share with Coderwall community!

Post a tip