Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Inline CSS or JS in Rails 5
<!DOCTYPE html>
<html>
<head>
<%= inline_js 'application.js' %>
<%= inline_css 'application.css' %>
</head>
<body>
</body>
</html>
module AssetsHelper
def inline_file(path)
if assets = Rails.application.assets
asset = assets.find_asset(path)
return '' unless asset
asset.source
else
File.read(File.join(Rails.root, 'public', asset_path(path)))
end
end
def inline_js(path)
"<script>#{inline_file path}</script>".html_safe
end
def inline_css(path)
"<style>#{inline_file path}</style>".html_safe
end
end
@vishwakarma
Copy link

vishwakarma commented Sep 24, 2018

You may use below if you have asset hosts configured as cdn
path = "Your asset name", like - home.css
File.read(File.join(Rails.root, 'public', 'assets', Rails.application.assets_manifest.assets[path]))

@julianguyen
Copy link

julianguyen commented Sep 26, 2018

Thanks for this! Does it work for scss?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment