# Configuration

Bruut works out of the box with smart defaults, but you can customize it for each project.

# Available settings

All the settings can be added to the with () Sass map. For example, if you'd like to change the height property in $input and the colors property in $color, add it like this:

// all.scss
@use "~bruut-design-system" as bruut with (
	$input: (
		height: 3em
	), 
	$color: (
		colors: (
			'alpha' : #ffa822,
			'bravo' : #ff6150,
			'charlie' : #1ac0c6,
			'delta' : #7AC93C,
			'echo' : #134e6f,
			'foxtrot' : #dee0e6
		)
	)
);

# $animation

key default
bezier cubic-bezier(0.175, 0.885, 0.32, 1.275)
timing 250ms

# $breakpoints

The $breakpoints variable doesn't have keys, but accepts a Sass Map with breakpoint key/value pairs

key default
$breakpoints ( desktop-small: 75rem, tablet: 64rem, small: 48rem, mobile: 30rem, mini: 20rem )

# $color (text-color, background-color, border-color)

The system needs the following base colors to be defined: [alpha (primary), bravo (secondary), charlie, delta, echo, foxtrot (greyish)]. The states property takes a Sass map with 4 state colors: [success, info, warning, error].

key default
colors ('alpha' : #ffa822, 'bravo' : #ff6150, 'charlie' : #1ac0c6, 'delta' : #7AC93C, 'echo' : #134e6f, 'foxtrot' : #dee0e6)
states (success: #7AC93C, info: #46989D, warning: #FFFE54, error: #ED6B58)
intervals (10, 20, 40, 60, 80, 100, 110, 120, 130, 140)

# $dimensions (width/height, spacing, radius, rhythm)

key default
input-height 2.75em
width-height ('alpha' : #ffa822, 'bravo' : #ff6150, 'charlie' : #1ac0c6, 'delta' : #7AC93C, 'echo' : #134e6f, 'foxtrot' : #dee0e6)
spacing ('0' : 0, '1' : .25rem, '2' : .5rem, '3' : 1rem, '4' : 2rem, '5' : 3rem, '6' : 4rem, '7' : 5rem, '8' : 6rem, '9' : 7rem, '10' : 8rem)
radius (10, 20, 40, 60, 80, 100, 110, 120, 130, 140)
rhythm ('1' : .25rem, '2' : .5rem, '3' : 1rem, '4' : 2rem, '5' : 3rem, '6' : 4rem, '7' : 5rem, '8' : 6rem, '9' : 7rem, '10' : 8rem)

# $flex

key default
classes ('is-flex' : (display,flex), 'is-inline-flex' : (display,inline-flex), 'is-flex-vertical' : (flex-direction,column), 'is-x-left' : (justify-content,flex-start), 'is-x-center' : (justify-content,center), 'is-x-right' : (justify-content,flex-end), 'is-x-space-between' : (justify-content,space-between), 'is-x-space-around' : (justify-content,space-around), 'is-y-top' : (align-items,flex-start), 'is-y-center' : (align-items,center), 'is-y-baseline' : (align-items,baseline), 'is-y-bottom' : (align-items,flex-end), 'is-multiline' : (flex-wrap,wrap), 'is-flex-shrink' : (flex,none), 'is-flex-narrow' : (flex,none), 'is-y-self-top' : (align-self,flex-start), 'is-y-self-center' : (align-self,center), 'is-y-self-bottom' : (align-self,flex-end))

# $grid

key default
column-spacing .5rem
container-spacing 6rem
container-spacing-narrow-breakpoint 'small'
stack-breakpoint 'mobile'
container-widths (base: 75rem, narrow: 60rem, mini: 40rem)

# $input

key default
height 2.75em

# $ratio

key default
default 56.25%
object-fit cover
object-position center center

# $shadow

The $shadow variable doesn't have keys, but accepts a Sass Map with shadow key/value pairs

key default
$shadow (1: 0 2px 4px 0 rgba(#000, .15), 2: 0 2px 36px 0 rgba(#000, .19))

# $text (sizes, weights)

key default
base-font-size 16px
base-line-height 1.35
base-font-stack '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"'
sizes (0 : (size : (4rem,1.625rem), line-height:1.35), 1 : (size : (3.5rem,1.5rem), line-height:1.35), 2 : (size : (3rem,1.375rem), line-height:1.35), 3 : (size : (2.5rem,1.25rem), line-height:1.35), 4 : (size : (2rem,1.25rem), line-height:1.35), 5 : (size : (1.7rem,1.25rem), line-height:1.35), 6 : (size : (1.5rem,1.25rem), line-height:1.35), 7 : (size : (1.375rem,1rem), line-height:1.35), 8 : (size : (1.25rem,1rem), line-height:1.35), 9 : (size : (1.125rem,1rem), line-height:1.35), 10 : (size : (1rem,0.875rem), line-height:1.35), 11 : (size:0.875rem,line-height:1.55), 12 : (size:0.75rem,line-height:1.55))
weights (300, 400, 500, 600, 700, 900)

# $viewport-sizer

key default
min 20rem
max 75rem