A modern, production-ready landing page built with Next.js 15, TypeScript, and Tailwind CSS.
- Framework: Next.js 15 with App Router
- Language: TypeScript for type safety
- Styling: Tailwind CSS v4 with custom theme
- Animation: Framer Motion for smooth interactions
- Icons: Heroicons and React Icons
- Testing: Jest + Testing Library
- Code Quality: ESLint + Prettier
- i18n: Multi-language support (EN/VI)
- SEO: Optimized metadata and performance
const colors = {
primary: '#001541',
accent: '#EE33DF',
'accent-light': '#FDD4FA',
blue: '#2249D1',
'blue-light': '#ACBBF2',
green: '#60FFC3',
'green-light': '#E4FFF5',
orange: '#FFAD2A',
'yellow-light': '#FFF3CF',
navy: '#00196F',
'gray-light': '#EAE9E6',
violet: '#5B4BE9',
'violet-light': '#A6A1FA',
red: '#D90E48',
}/app # App Router pages and layouts
├── layout.tsx # Root layout with SEO
├── page.tsx # Landing page
└── globals.css # Global styles with custom theme
/components
├── common/ # Reusable UI components
│ ├── Button.tsx # Button with variants
│ ├── Card.tsx # Card with hover effects
│ └── IconWrapper.tsx
└── sections/ # Landing page sections
/locales
├── en/ # English translations
└── vi/ # Vietnamese translations
/public
├── images/ # Optimized images
└── icons/ # Local SVG icons
/utils
├── helpers.ts # Utility functions & animations
└── i18n.ts # Internationalization helpers
/tests # Unit tests
- Install dependencies:
npm install- Start development server:
npm run devnpm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLintnpm run lint:fix- Fix ESLint issuesnpm run format- Format code with Prettiernpm run test- Run testsnpm run test:watch- Run tests in watch modenpm run test:coverage- Run tests with coverage
- Components: Use functional components with TypeScript
- Styling: Follow mobile-first responsive design
- Accessibility: Use semantic HTML and ARIA labels
- Images: Always use next/image for optimization
- Testing: Write tests for all components
- i18n: Use translation keys for all text content
The app is ready for deployment on platforms like:
- Vercel (recommended)
- Netlify
- AWS Amplify
© 2025 Blablo. All rights reserved.