A modern landing page and web application built with Next.js 14, featuring a beautiful UI design and optimized for global performance using Cloudflare Pages deployment.
- Modern Stack: Built with Next.js 14 App Router and TypeScript
- Beautiful UI: Powered by NextUI, Tailwind CSS, and Framer Motion
- Internationalization: Multi-language support with next-intl
- Analytics Integration: Plausible Analytics and Google Analytics support
- Dark Mode: Seamless dark/light mode switching with next-themes
- SEO Optimized: Built-in sitemap generation and meta tags
- Global CDN: Cloudflare Pages deployment for optimal performance
- State Management: Zustand for efficient state handling
- Node.js 18.x or later
- pnpm (recommended) or npm
- Git
- Cloudflare account (for deployment)
- Clone the repository:
git clone https://github.com/yourusername/bbhack-git.git
cd bbhack-git
- Install dependencies:
pnpm install
- Set up environment variables:
cp .env.example .env.local
Configure the following in your .env.local
:
NEXT_PUBLIC_GA_ID
: Google Analytics IDNEXT_PUBLIC_SITE_URL
: Your site URL
Start the development server:
pnpm dev
Open http://localhost:3000 in your browser.
pnpm build
pnpm start
- Preview deployment:
pnpm preview
- Production deployment:
pnpm deploy
├── app/ # Next.js 14 app directory
│ ├── [locale]/ # Internationalization routes
│ ├── api/ # API routes
│ └── layout.tsx # Root layout
├── components/ # React components
│ ├── ui/ # UI components
│ └── shared/ # Shared components
├── lib/ # Utility functions
├── messages/ # Internationalization messages
├── public/ # Static assets
├── styles/ # Global styles
└── types/ # TypeScript definitions
The project supports multiple languages. Add new translations in the messages
directory.
- Tailwind CSS for styling
- NextUI components
- Custom theme configuration in
tailwind.config.ts
- Dark mode support via next-themes
- Plausible Analytics integration
- Google Analytics support
- Custom event tracking
- Environment variables protection
- API route protection
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For support, please open an issue in the GitHub repository.