- Created complete project directory structure: - Frontend with Next.js 15.2.3 app router structure - Backend with Express API endpoints - Docker configurations with security best practices - MongoDB initialization with schema validation - Nginx configuration with security headers - Implemented core file templates: - Custom video player with transcript display options - MongoDB schemas with validation for Videos and Members - JWT authentication middleware with role-based access control - Docker Compose with resource limits and security - Frontend/backend package.json with dependencies - Updated documentation: - Enhanced TECH_STACK with latest version details - Updated TO_DO.txt with WCAG 2.2 AA requirements - Updated planned_implementation.txt with current best practices - Refreshed all Memory Bank files with current state - Security and accessibility improvements: - Added MongoDB 7.0 schema validation with - Enhanced video requirements with mandatory transcripts and thumbnails - Updated accessibility to WCAG 2.2 AA standards - Added security best practices for Docker deployments
92 lines
2.1 KiB
JavaScript
92 lines
2.1 KiB
JavaScript
/** @type {import('tailwindcss').Config} */
|
|
module.exports = {
|
|
content: [
|
|
'./src/app/**/*.{js,ts,jsx,tsx,mdx}',
|
|
'./src/pages/**/*.{js,ts,jsx,tsx,mdx}',
|
|
'./src/components/**/*.{js,ts,jsx,tsx,mdx}',
|
|
],
|
|
theme: {
|
|
extend: {
|
|
colors: {
|
|
primary: {
|
|
DEFAULT: '#1a56db',
|
|
50: '#eff6ff',
|
|
100: '#dbeafe',
|
|
200: '#bfdbfe',
|
|
300: '#93c5fd',
|
|
400: '#60a5fa',
|
|
500: '#3b82f6',
|
|
600: '#2563eb',
|
|
700: '#1d4ed8',
|
|
800: '#1e40af',
|
|
900: '#1e3a8a',
|
|
},
|
|
secondary: {
|
|
DEFAULT: '#7e3af2',
|
|
50: '#f5f3ff',
|
|
100: '#ede9fe',
|
|
200: '#ddd6fe',
|
|
300: '#c4b5fd',
|
|
400: '#a78bfa',
|
|
500: '#8b5cf6',
|
|
600: '#7c3aed',
|
|
700: '#6d28d9',
|
|
800: '#5b21b6',
|
|
900: '#4c1d95',
|
|
},
|
|
accent: {
|
|
DEFAULT: '#ff9800',
|
|
50: '#fff8e1',
|
|
100: '#ffecb3',
|
|
200: '#ffe082',
|
|
300: '#ffd54f',
|
|
400: '#ffca28',
|
|
500: '#ffc107',
|
|
600: '#ffb300',
|
|
700: '#ffa000',
|
|
800: '#ff8f00',
|
|
900: '#ff6f00',
|
|
},
|
|
},
|
|
fontFamily: {
|
|
sans: ['Inter', 'system-ui', 'sans-serif'],
|
|
},
|
|
borderRadius: {
|
|
'xl': '0.75rem',
|
|
'2xl': '1rem',
|
|
},
|
|
boxShadow: {
|
|
'focus': '0 0 0 3px rgba(59, 130, 246, 0.5)',
|
|
},
|
|
typography: (theme) => ({
|
|
DEFAULT: {
|
|
css: {
|
|
a: {
|
|
color: theme('colors.primary.DEFAULT'),
|
|
'&:hover': {
|
|
color: theme('colors.primary.700'),
|
|
},
|
|
},
|
|
h1: {
|
|
fontWeight: '700',
|
|
},
|
|
h2: {
|
|
fontWeight: '600',
|
|
},
|
|
h3: {
|
|
fontWeight: '600',
|
|
},
|
|
},
|
|
},
|
|
}),
|
|
},
|
|
},
|
|
plugins: [
|
|
require('@tailwindcss/typography'),
|
|
require('@tailwindcss/forms'),
|
|
],
|
|
darkMode: 'media', // 'media' or 'class'
|
|
future: {
|
|
hoverOnlyWhenSupported: true,
|
|
},
|
|
};
|