threed-garden
Version:
ThreeD Garden: WebGL 3D Environment Interface for Next.JS React TypeScript Three.JS React-Three Physics, 2D Paper.JS; APIs: Apollo GraphQL, WordPress; CSS: Tailwind, Radix-UI; Libraries: FarmBot 3D; AI: OpenAI, DeepSeek
174 lines (172 loc) • 4.67 kB
JavaScript
// ==============================================================
// RESOURCES
const colors = require('tailwindcss/colors')
// MODULE
/** @type {import('tailwindcss').Config} */
module.exports = {
content: [
// './src/app/**/*.{js,ts,jsx,tsx}',
'./src/layout/**/*.{js,ts,jsx,tsx}',
// './src/**/*.{ts,tsx}',
],
darkMode: 'class', // or 'media' or 'class'
important: false,
corePlugins: {
preflight: false,
},
future: {
hoverOnlyWhenSupported: true,
},
theme: {
container: {
center: true,
padding: '2rem',
screens: {
'2xl': '1400px',
},
},
extend: {
// extend: {
/**
* added the default spacing values to max width
* @param theme
*/
maxWidth: (theme) => ({
...theme('spacing'),
}),
minWidth: (theme) => ({
...theme('spacing'),
}),
backgroundColor: ['group-focus'],
borderRadius: {
lg: 'var(--radius)',
md: 'calc(var(--radius) - 2px)',
sm: 'calc(var(--radius) - 4px)',
},
borderWidth: {
1: '1px',
},
// },
// https://vercel.com/design/color
colors: {
gray: colors.zinc,
'gray-1000': 'rgb(17,17,19)',
'gray-1100': 'rgb(10,10,11)',
vercel: {
pink: '#FF0080',
blue: '#0070F3',
cyan: '#50E3C2',
orange: '#F5A623',
violet: '#7928CA',
},
border: 'hsl(var(--border))',
input: 'hsl(var(--input))',
ring: 'hsl(var(--ring))',
background: 'hsl(var(--background))',
foreground: 'hsl(var(--foreground))',
primary: {
DEFAULT: 'hsl(var(--primary))',
foreground: 'hsl(var(--primary-foreground))',
},
secondary: {
DEFAULT: 'hsl(var(--secondary))',
foreground: 'hsl(var(--secondary-foreground))',
},
destructive: {
DEFAULT: 'hsl(var(--destructive))',
foreground: 'hsl(var(--destructive-foreground))',
},
muted: {
DEFAULT: 'hsl(var(--muted))',
foreground: 'hsl(var(--muted-foreground))',
},
accent: {
DEFAULT: 'hsl(var(--accent))',
foreground: 'hsl(var(--accent-foreground))',
},
popover: {
DEFAULT: 'hsl(var(--popover))',
foreground: 'hsl(var(--popover-foreground))',
},
card: {
DEFAULT: 'hsl(var(--card))',
foreground: 'hsl(var(--card-foreground))',
},
},
backgroundImage: ({ theme }) => ({
'vc-border-gradient': `radial-gradient(at left top, ${theme('colors.gray.500')}, 50px, ${theme(
'colors.gray.800'
)} 50%)`,
}),
keyframes: ({ theme }) => ({
rerender: {
'0%': {
['border-color']: theme('colors.vercel.pink'),
},
'40%': {
['border-color']: theme('colors.vercel.pink'),
},
},
highlight: {
'0%': {
background: theme('colors.vercel.pink'),
color: theme('colors.white'),
},
'40%': {
background: theme('colors.vercel.pink'),
color: theme('colors.white'),
},
},
shimmer: {
'100%': {
transform: 'translateX(100%)',
},
},
translateXReset: {
'100%': {
transform: 'translateX(0)',
},
},
fadeToTransparent: {
'0%': {
opacity: 1,
},
'40%': {
opacity: 1,
},
'100%': {
opacity: 0,
},
},
'accordion-down': {
from: { height: 0 },
to: { height: 'var(--radix-accordion-content-height)' },
},
'accordion-up': {
from: { height: 'var(--radix-accordion-content-height)' },
to: { height: 0 },
},
}),
animation: {
'accordion-down': 'accordion-down 0.2s ease-out',
'accordion-up': 'accordion-up 0.2s ease-out',
},
},
},
variants: {
extend: {
// ...
borderWidth: ['hover', 'focus'],
},
},
plugins: [
require('@tailwindcss/forms'),
require('tailwindcss-animate'),
// require('daisyui')
],
// daisyui: {
// darkTheme: 'business',
// themes: ['light', 'luxury', 'business', 'haloween'],
// prefix: 'daisy',
// },
}