๐ English | ็ฎไฝไธญๆ
IndieShow: ๐ A Next.js 15 + Tailwind CSS 4 + TypeScript Product Showcase Template for Indie Developers
Focused on development experience: ๐ฅ๏ธ Next.js 15 + ๐ ๏ธ TypeScript + ๐จ Tailwind CSS 4 + ๐ next-intl + ๐ React Markdown + ๐ ESLint + ๐ Multiple Analytics Tools + โ๏ธ Vercel. Quickly launch your global AI SaaS application with this elegant, high-performance, and SEO-friendly framework.
IndieShow-Starter-Nextjs is a product showcase website template designed specifically for indie developers. Built on Next.js 15 + Tailwind CSS 4 + TypeScript, you can create a professional product showcase website in minutes with simple configuration!
- ๐ข Product showcases for startups
- ๐จโ๐ป Portfolio for independent developers
- ๐ ๏ธ Quick-start template for development projects
Test Item | Score | Baseline |
---|---|---|
Google PageSpeed (Mobile) | 94 | > 90 |
Google PageSpeed (Desktop) | 100 | > 90 |
Mobile Performance
|
Desktop Performance
|
Light Theme
|
Dark Theme
|
- Demo Site: https://indieshow.waveany.com
- Documentation: View Docs
- Framework: Next.js 15 App Router
- Internationalization: next-intl 4, with automatic language detection, supports English and Chinese switching
- Theming: next-themes, supports light/dark modes, follows system preferences by default
- Styling: Tailwind CSS 4, with container queries and custom variants
- Typing: TypeScript 5
- Component Libraries:
- Basic components: shadcn/ui
- Visually enhanced components: magicui
- Icon 8000 s: lucide-react
- Animations: framer-motion
- Analytics Tools: Integration with Google Analytics, Baidu Analytics, OpenPanel, Plausible, and Umami
src/
โโโ app/ # Next.js App Router
โ โโโ [locale]/ # Internationalized routes
โ โ โโโ layout.tsx # Root layout
โ โ โโโ page.tsx # Home page
โ โ โโโ (legal)/ # Legal pages route group
โ โ โโโ group/ # Community group page
โโโ components/ # Components directory
โ โโโ block/ # Block components (Hero, Feature, ShowCase, CTA)
โ โโโ client/ # Client components
โ โโโ layout/ # Layout components (Header, Footer)
โ โโโ magicui/ # Magic UI components
โ โโโ markdown/ # Markdown rendering components
โ โโโ providers/ # Provider components
โ โโโ ui/ # UI components
โโโ i18n/ # Internationalization
โ โโโ config/ # i18n configuration
โ โโโ locales/ # Language files
โ โโโ types/ # Type definitions
โโโ lib/ # Utility libraries
โ โโโ analytics/ # Analytics tools
โ โโโ api/ # API utilities
โ โโโ utils/ # Common utilities
โโโ styles/ # Style files
โ โโโ globals.css # Global styles
โ โโโ theme.css # Theme colors
โโโ middleware.ts # Middleware
- Using the latest dependency versions with continuous updates
- Clear distinction between server and client components based on App Router
- Complete TypeScript type support
- Consistent code style and formatting rules
- Responsive design based on Tailwind CSS 4
- Light/dark theme switching, following system theme
- Beautiful transitions and page effects
- Customizable theme colors (OKLCH color space)
- Support for English and Chinese using next-intl 4.0, easily extendable
- Type-safe internationalized messages
- GDPR-compliant localization cookie handling
- Automatic language prefix in URLs (e.g., /zh)
- Perfect adaptation for mobile and desktop
- Optimized interactions for different devices
- Precise responsive design using container queries at the component level
- Server-side rendering support based on Next.js 15
- Complete Meta tag support
- Customizable page titles and descriptions
- Reduced client-side JS volume using React Server Components
- Automatic code splitting
- Image optimization (using Next.js Image component)
- Intelligent component lazy loading
- Server caching and incremental static regeneration
You can directly edit the src/styles/theme.css
file to modify theme colors. This file uses the OKLCH color space, providing better perceptual uniformity and a wider color gamut.
:root {
--background: oklch(1 0 0);
--foreground: oklch(0.141 0.005 285.823);
--primary: oklch(0.5098 0.2392 265.87);
/* Other color variables... */
}
.dark {
--background: oklch(0.141 0.005 285.823);
--foreground: oklch(0.985 0 0);
/* Dark theme color variables... */
}
The project adopts a server component and client component separation architecture to fully leverage the performance advantages of Next.js 15:
- Server Components: All components are server components by default, reducing client-side JS volume
- Client Components: Components requiring interaction, state, or browser APIs are stored in the
src/components/client/
directory - Wrapper Pattern: Server components wrap client components, eliminating the need to be aware of differences when using them
import type { LanguageSwitcherProps } from '@/components/client/language-switcher-client'
// Server component wrapper (src/components/ui/language-switcher.tsx)
import { LanguageSwitcherClient } from '@/components/client/language-switcher-client'
export function LanguageSwitcher(props: LanguageSwitcherProps) {
return <LanguageSwitcherClient {...props} />
}
// Client component implementation (src/components/client/language-switcher-client.tsx)
'use client'
export function LanguageSwitcherClient() {
// Client-side state and interaction logic
}
The project integrates multiple popular website analytics and statistics tools to provide comprehensive user access and behavior data:
-
Google Analytics
- Configured via the
NEXT_PUBLIC_GOOGLE_ANALYTICS_ID
environment variable
- Configured via the
-
Baidu Analytics
- Configured via the
NEXT_PUBLIC_BAIDU_ANALYTICS_ID
environment variable
- Configured via the
-
OpenPanel
- Configured via the
NEXT_PUBLIC_OPENPANEL_CLIENT_ID
environment variable
- Configured via the
-
Plausible
- Configured via the
NEXT_PUBLIC_PLAUSIBLE_DOMAIN
environment variable
- Configured via the
-
Umami
- Configured via the
NEXT_PUBLIC_UMAMI_WEBSITE_ID
environment variable
- Configured via the
- Node.js โฅ 18.0
- pnpm โฅ 8.0
- Clone the project
git clone https://github.com/WaveAny/IndieShow-Starter-Nextjs.git
cd IndieShow-Starter-Nextjs
pnpm install
- Configure environment variables
cp .env.example .env.local
- Start the development server
pnpm dev
- Build and deploy
# Production build
pnpm build
# Start production server
pnpm start
- One-click deployment
Recommended to deploy with Vercel:
This project is licensed under the MIT License.
- Next.js 15 - React full-stack framework
- React 19 - JavaScript UI library
- Tailwind CSS 4 - Utility-first CSS framework
- shadcn/ui - Reusable component library
- GitHub Issues: Submit Issue
- Email: support@waveany.com