/
tailwind.config.js
98 lines (97 loc) · 2.9 KB
/
tailwind.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
/* eslint-disable */
const { spacing, fontFamily } = require('tailwindcss/defaultTheme')
const typographyPlugin = require('@tailwindcss/typography')
module.exports = {
content: [
'./pages/**/*.{js,ts,jsx,tsx}',
'./components/**/*.{js,ts,jsx,tsx}',
'./layouts/**/*.{js,ts,jsx,tsx}',
'./styles/**/*.{scss,css}'
],
darkMode: 'class',
theme: {
extend: {
color: {
primary: 'var(--theme-accent)',
secondary: 'var(--theme-accent-secondary)',
contrast: 'var(--theme-accent-contrast)'
},
fontFamily: {
sans: ['Inter var', ...fontFamily.sans]
},
typography: theme => ({
// this is for markdown content
// https://sergiodxa.com/articles/use-tailwindcss-typography-with-dark-mode-styles
// https://github.com/tailwindlabs/tailwindcss-typography
DEFAULT: {
css: {
color: theme('colors.gray.700'),
a: {
color: theme('colors.purple.500'),
'&:hover': {
color: theme('colors.purple.700')
},
code: { color: theme('colors.purple.400') }
},
'h2,h3,h4': {
'scroll-margin-top': spacing[32]
},
code: { color: theme('colors.pink.500') },
'blockquote p:first-of-type::before': false,
'blockquote p:last-of-type::after': false
}
},
dark: {
css: {
color: theme('colors.gray.300'),
a: {
color: theme('colors.purple.400'),
'&:hover': {
color: theme('colors.purple.600')
},
code: { color: theme('colors.purple.400') }
},
blockquote: {
borderLeftColor: theme('colors.gray.700'),
color: theme('colors.gray.300')
},
'h2,h3,h4': {
color: theme('colors.gray.100'),
'scroll-margin-top': spacing[32]
},
hr: { borderColor: theme('colors.gray.700') },
ol: {
li: {
'&:before': { color: theme('colors.gray.500') }
}
},
ul: {
li: {
'&:before': { backgroundColor: theme('colors.gray.500') }
}
},
strong: { color: theme('colors.gray.300') },
thead: {
color: theme('colors.gray.100')
},
tbody: {
tr: {
borderBottomColor: theme('colors.gray.700')
}
}
}
}
})
}
},
plugins: [typographyPlugin],
variants: {
extend: {
scale: ['motion-safe', 'hover', 'focus'],
transform: ['motion-safe', 'hover', 'focus'],
translate: ['motion-safe', 'hover', 'focus'],
opacity: ['motion-safe', 'hover', 'focus']
},
typography: ['dark']
}
}