UNPKG

avvo-styleguide

Version:
67 lines (52 loc) 2.53 kB
# Avvo's Styleguide This repo was ripped and migrated from the [avvo_ui](https://github.com/avvo/avvo_ui) Rails gem. The intent of this repo is to put the responsibility of compiling the `.scss` and `.js` onto the app - allowing for better modularity and flexibility to load only what is needed. It serves up uncompiled ES6 based Javascript and .scss files for consumption in the host app. `./source` There is also a compiled .css and Javascript version for use in host apps that wish to not have to compile the assets `./dist`. ## Usage Install the package ``` npm install avvo-styleguide --save-dev ``` or with Yarn (faster and preferred package manager) ``` yarn add avvo-styleguide ``` ### Javascript with Webpack Import as you would other node_module packages ``` import FunctionExport from 'avvo-styleguide/source/javascripts/path_to_file' ``` ### Sass in Rails app 1. Add additional assets to load path `config/initializers/assets.rb` ``` Rails.application.config.assets.paths << Rails.root.join('node_modules') ``` 2. Add modules to autoloader path `config/application.rb` ``` class Application < Rails::Application # .... config.autoload_paths += %W(#{config.root}/node_modules) end ``` 3. Suggestion: Import the raw .scss files into a single .scss file - eg. `app/assets/stylesheets/styleguide/main.scss`. Reference that file when needed. ``` @import './sass_helpers'; @import 'node_modules/avvo-styleguide/source/stylesheets/vendor/normalize'; @import 'node_modules/avvo-styleguide/source/stylesheets/fonts/all'; @import 'node_modules/avvo-styleguide/source/stylesheets/base/all'; @import 'node_modules/avvo-styleguide/source/stylesheets/layout/all'; @import 'node_modules/avvo-styleguide/source/stylesheets/components/all'; @import 'node_modules/avvo-styleguide/source/stylesheets/shame/all'; @import 'node_modules/avvo-styleguide/source/stylesheets/utilities/all'; ``` 4. Make sure to still include your sass helpers when using one off .scss pages and need access to Avvo's colors, or other features of the styleguide `app/assets/stylesheets/styleguide/sass_helpers.scss` ``` @import 'node_modules/avvo-styleguide/source/stylesheets/functions/all'; @import 'node_modules/avvo-styleguide/source/stylesheets/config/all'; @import 'node_modules/avvo-styleguide/source/stylesheets/mixins/all'; ``` ### Releasing new Version 1. Go to http://infrastructure.corp.avvo.com/read-token.html to set up `~/.npmrc` 2. Run `npm publish`