Integrating SCSS / SASS
In this recipe we will add in JS SASS/SCSS imports to the scaffold. Like with an other recipe we assume that you already created your service with the create-react-microservice CLI and it is working properly. Since this recipe shares a lot of code with the regular CSS setup, please follow the Integrating CSS / PostCSS recipe first! :-)
Table of Contents
Changing the example CSS setup
After finishing the CSS setup recipe, we can start of by changing some CSS specifics into the required rules for the SASS/SCSS integration. Rename your test style.css file into style.scss, change the import statement in the app.js accordingly and paste the following code into the SCSS file.
$myColor: red;
.exampleCssIntegrationClassName {
  color: $myColor;
}
And the last change is in the global build/.flowconfig, adjust the previously added re-mapping of css files in the [options] section into the following.
module.name_mapper='.*\(.scss\)' -> 'empty/object'
Installing new dependencies
Change into your config package and execute the following command to add dependencies that are required to compile SASS with webpack.
yarn add sass-loader node-sass
Adjusting the client-side webpack config
Afterwards open up the default configuration of webpack for the client side bundle, e.g. packages/my-fancy-ui-config/src/webpack.config.client.defaults.js and add the following loader after the postcss-loader object.
{
  loader: "sass-loader",
  options: {
    sourceMap: config.webpack.hasSourceMaps
  }
}
And that's it - If you execute a yarn run build && yarn run start or yarn run dev in the root of your mono-repository you should see the headings now in red and the css being served to the client! :rocket: