Primer ViewComponents is an implementation of the Primer Design System, using ViewComponent.
In your Gemfile
, add:
gem "primer_view_components"
In config/application.rb
, add after the application definition:
require "view_component"require "primer/view_components"
Load CSS as a JS module into the pipeline. Update app/assets/config/manifest.js
with:
//= link primer_view_components.css
Add it in your application.html.erb
in the <head>
tag:
<%= stylesheet_link_tag("primer_view_components") %>
Optionally, to add the JavaScript behaviours, in your application.html.erb
in the <head>
tag add:
<%= javascript_include_tag("primer_view_components") %>
Or alternatively, you can install the @primer/view-components
npm package and in your JavaScript code add:
import '@primer/view-components'
You can also import only the components you need:
import '@primer/view-components/tab_container'
Render Primer ViewComponents in Rails templates:
<%= render(Primer::Beta::Counter.new(count: 25)) %>
In addition to the dependencies declared in the gemspec
, Primer ViewComponents assumes the presence of Primer CSS.
See the primer/view_components repository for more information about how to use and contribute to Primer ViewComponents. For component-specific documentation, check out the Rails section of component guidelines (example: ActionList).