As of Recipe v14, emotion themes are now supported, making Recipe more flexible and adaptable, allowing downstream apps to use themes to utilize Recipe components more effectively.
Recipe themes are extended from the MUI default theme and represent a single source of truth for supported theme properties. If there is a specific use case for doing so, these themes can be further extended.
Recipe defines and makes accessible the following supported themes:
ezTheme
ezMarketplaceTheme
- extends ezTheme
ezFulfillmentTheme
- extends ezTheme
To learn more about how to use and extend these themes, read our Getting Started section on Recipe Themes.
Recipe supports the following set of design tokens for colors:
#151515
common.neutral170
#565a5c
common.neutral160
#787878
common.neutral150
#b2b3b3
common.neutral140
#e5e6e6
common.neutral130
#f5f7f7
common.neutral120
#fafbfc
common.neutral110
#fff
common.neutral100
#1d3c34
common.primary120
#034a34
common.primary110
#00b373
common.primary100
#f0faf7
common.primary90
#f9d055
common.yellow110
#f9fae4
common.yellow100
#ff585d
common.red100
#7f379c
common.purple100
#f8f3fa
common.purple90
#3f61ff
common.blue100
#f2f4ff
common.blue90
#407560
common.green105
#00a40f
common.success100
#f0fae4
common.success90
#972f2f
common.alert110
#d3302f
common.alert100
#f7c1c1
common.alert90
#fdefef
common.alert80
#926a00
common.warning110
#e9a801
common.warning100
#fff3ce
common.warning90
#fcf6e5
common.warning80
Recipe supports the following set of design tokens for typography:
ezTheme
uses the Lato font, which also extends to ezMarketplaceTheme
.
fontFamily: 'Lato', 'Helvetica Neue', 'Arial', 'Helvetica', 'sans-serif';
ezFulfillmentTheme
uses the Montserrat font for headers and the Roboto Flex font for everything else.
fontFamily: 'Montserrat', 'Helvetica Neue', 'Arial', 'Helvetica', 'sans-serif';
fontFamily: 'Roboto Flex', 'Helvetica Neue', 'Arial', 'Helvetica', 'sans-serif';
ezTheme
icons support the following sizes:
small: 16px
medium: 24px
large: 32px
xlarge: 60px
Recipe uses z-indices sparingly, as this can cause maintenance issues with stacking context within Recipe and in downstream applications. In some cases, we carefully use z-index values to properly layer components like modals. Recipe mirrors the MUI z-index values to avoid conflicts with components that were implemented with MUI. While you can override the z-indices, it is discouraged because it will likely have cascading effects.
Our currently specified z-indices:
EzModal: 1300
EzAutosuggest: 1350
EzDateInput: 1350
EzPopover: 1350
EzSelect: 1350
EzTimeInput: 1350
EzTooltip: 1500