Frontend (Next.js 15 + shadcn/ui + Tailwind, Supabase Auth): - Landing page: hero, feature grid, social proof (EU Accessibility Act), CTA - Pricing page: Free / Pro $29 / Business $149 with highlighted Pro tier - Auth: magic link login + signup (Supabase OTP, no password) - App layout: sidebar nav (Dashboard, History, Billing, Team) - Dashboard: drag-and-drop PDF upload with quota error handling - Jobs history: table with score badges and status indicators - Billing: Stripe Checkout + Customer Portal integration - Supabase SSR client/server helpers Deploy: - docker-compose.prod.yml: postgres, redis, minio, api, celery, nextjs, caddy - Caddyfile: auto-SSL for pdfaccess.ai-impress.com - Watchtower excluded (locally-built images) CI/CD (Forgejo Actions): - backend-lint-test: pytest with real postgres + redis - frontend-lint: tsc typecheck - build-and-push: docker build → push to registry.ai-impress.com - SSH deploy to homelab on push to main Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
22 lines
497 B
TypeScript
22 lines
497 B
TypeScript
import type { Config } from "tailwindcss";
|
|
|
|
export default {
|
|
content: ["./app/**/*.{ts,tsx}", "./components/**/*.{ts,tsx}"],
|
|
theme: {
|
|
extend: {
|
|
colors: {
|
|
brand: {
|
|
50: "#eef2ff",
|
|
100: "#e0e7ff",
|
|
500: "#6366f1",
|
|
600: "#4f46e5",
|
|
700: "#4338ca",
|
|
},
|
|
},
|
|
fontFamily: {
|
|
sans: ["Inter", "system-ui", "sans-serif"],
|
|
},
|
|
},
|
|
},
|
|
plugins: [require("@tailwindcss/typography")],
|
|
} satisfies Config;
|