feat(marketing): add contact form submission and testing setup

- Add contact API endpoint for demo requests and sales enquiries
- Implement functional contact forms on Demo and Pricing pages with honeypot spam protection
- Update footer layout: remove Company section, add contact email
- Update self-hosted FAQ to mention open source with GitHub links
- Add vitest and testing-library dependencies
- Add tests for MarketingLayout and PricingPage components
- Remove placeholder external-auth test file
This commit is contained in:
2026-04-18 00:33:02 +09:30
parent 2baf6cd51a
commit cb62079b4f
12 changed files with 1794 additions and 343 deletions
+6 -1
View File
@@ -46,6 +46,7 @@
"date-fns": "^3.6.0",
"embla-carousel-react": "^8.6.0",
"input-otp": "^1.4.2",
"jsdom": "^27.0.1",
"lucide-react": "^0.462.0",
"next-themes": "^0.3.0",
"react": "^18.3.1",
@@ -64,10 +65,13 @@
"devDependencies": {
"@eslint/js": "^9.32.0",
"@tailwindcss/typography": "^0.5.16",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.2",
"@types/node": "^22.16.5",
"@types/react": "^18.3.23",
"@types/react-dom": "^18.3.7",
"@vitejs/plugin-react-swc": "^3.11.0",
"@vitest/ui": "^3.2.4",
"autoprefixer": "^10.4.21",
"eslint": "^9.32.0",
"eslint-plugin-react-hooks": "^5.2.0",
@@ -78,6 +82,7 @@
"tailwindcss": "^3.4.17",
"typescript": "^5.8.3",
"typescript-eslint": "^8.38.0",
"vite": "^5.4.19"
"vite": "^5.4.19",
"vitest": "^3.2.4"
}
}