A modern, visually stunning AI prompt gallery showcasing 1084+ carefully curated AI-generated artworks.
- Unique Design: Playful Pop-Art x Futurism style with Banana Yellow + Neon Purple color scheme
- Custom Font System: Syne (display) + Outfit (body) + Space Mono (code)
- Smooth Animations: Framer Motion powered silky interactions and page transitions
- Responsive Layout: Perfect support for mobile, tablet, and desktop devices
- Real-time Search: Quick search across titles and prompt content
- Tag Filtering: Filter cases by style, model, and other tags
- Bilingual Support: Chinese/English automatic switching with intelligent language detection
- Detail Modal: Click cards to view large images and complete prompts
- One-click Copy: Quickly copy prompts to clipboard
- CDN Acceleration: 1303+ images distributed globally via Cloudflare R2 CDN
- Image Optimization: Next.js Image component automatic optimization
- Code Splitting: On-demand loading for fast first-screen rendering
- Data Caching: Smart caching strategy
- TypeScript: Type-safe with excellent development experience
- Component-based: Clear component structure and code organization
- Incremental Upload: R2 image incremental upload tool avoids duplicate uploads
| Technology | Version | Purpose |
|---|---|---|
| Next.js | 15.5.9 | React framework, App Router |
| React | 19.0 | UI library |
| TypeScript | 5 | Type safety |
| Tailwind CSS | 3.4 | Styling framework |
| Framer Motion | 11.15 | Animation library |
| AWS SDK | 3.962 | R2 storage client |
| Cloudflare R2 | - | Image CDN storage |
- Syne (700, 800) - Headings and display text
- Outfit (300-700) - Body and UI text
- Space Mono (400, 700) - Code and prompts
- Node.js 18+
- npm or yarn
# 1. Clone repository
git clone https://github.com/gotoBest/banana-nano-prompt.git
cd banana-nano-prompt
# 2. Install dependencies
npm install
# 3. Start development server
npm run dev
# 4. Open browser
# http://localhost:3000# Build
npm run build
# Start production server
npm run start- Click the button above
- Import GitHub repository
- Vercel auto-detects Next.js configuration
- Click "Deploy"
If you need to configure CDN or other features:
# R2 CDN domain (images already configured as https://gotovpn.win)
NEXT_PUBLIC_R2_CDN_URL=https://your-cdn-domain.com--color-banana: #FFE135; /* Banana Yellow */
--color-neon-pink: #FF6B9D; /* Neon Pink */
--color-neon-purple: #B829DD; /* Neon Purple */
--color-bg-dark: #0F0E1E; /* Dark Background */
--color-bg-card: #1A1033; /* Card Background */--font-display: 'Syne', sans-serif;
--font-body: 'Outfit', sans-serif;
--font-mono: 'Space Mono', monospace;- Glass Card: Frosted glass effect cards
- Neon Glow: Neon glowing borders
- Skeleton Shimmer: Loading screen animation
- Hover Effects: 3D tilt and zoom effects
banana-nano-prompt/
βββ src/
β βββ app/
β β βββ globals.css # Global styles and CSS variables
β β βββ layout.tsx # Root layout (font loading)
β β βββ page.tsx # Main page
β βββ components/
β β βββ Header.tsx # Top navigation bar
β β βββ PromptCard.tsx # Case card component
β β βββ Modal.tsx # Detail modal
β β βββ MetadataUpdater.tsx # SEO metadata update
β βββ contexts/
β β βββ LanguageContext.tsx # Language switch context
β βββ data/
β β βββ prompts.json # 1084 cases data
β β βββ title-en.json # English translations
β β βββ id-title.json # ID-title mapping
β βββ lib/
β β βββ data.ts # Data loading
β β βββ i18n.ts # Internationalization
β βββ types/
β βββ index.ts # TypeScript type definitions
βββ public/
β βββ images/ # Image folder (migrated to R2)
βββ scripts/
β βββ upload-images-to-r2.js # R2 upload script
β βββ update-image-urls-to-r2.js # URL update script
β βββ download-images.js # Image download script
βββ .env.local.example # Environment variables template
βββ next.config.js # Next.js configuration
βββ tailwind.config.ts # Tailwind configuration
βββ package.json
- Total Cases: 1084 AI prompt cases
- Image Count: 1303+ high-quality images
- Storage: Cloudflare R2 CDN
- Data Size: ~2MB (excluding images)
- Supported Languages: Chinese, English
# First time or incremental upload
npm run r2:upload
# Update image URLs
NEXT_PUBLIC_R2_CDN_URL=https://your-cdn.com npm run r2:update-urls- β Incremental Upload: Automatically skips already uploaded files
- β Record Tracking: r2-upload-record.json tracks upload history
- β R2 Sync: Automatically syncs existing files from R2
- β Progress Display: Real-time upload/skip progress
- π¨π³ Chinese (Simplified)
- πΊπΈ English
- Automatically switches based on browser language
- Chinese users see Chinese by default
- Other languages default to English
- Manual switching takes effect immediately
- β AI artists finding inspiration
- β Prompt engineers reference and learning
- β Designers exploring AI art styles
- β Developers learning Next.js best practices
# Development
npm run dev # Start development server
# Build
npm run build # Build production version
npm run start # Start production server
# Image Management
npm run download-images # Download images
npm run r2:upload # Upload to R2
npm run r2:update-urls # Update image URLs
# Code Check
npm run lint # ESLint checkContributions, issues, and feature requests are welcome!
- Fork the repository
- Create feature branch (
git checkout -b feature/AmazingFeature) - Commit changes (
git commit -m 'Add some AmazingFeature') - Push to branch (
git push origin feature/AmazingFeature) - Open Pull Request
- β Initial release
- β 1084 AI prompt cases
- β Bilingual support (Chinese/English)
- β Responsive design
- β R2 CDN integration
- β Incremental upload functionality
MIT License - see LICENSE file for details
- Next.js - React framework
- Tailwind CSS - CSS framework
- Framer Motion - Animation library
- Cloudflare R2 - Object storage
- Nano Banana - AI prompt source
Made with π by gotoBest
β If this project helps you, please give it a Star!
π§ Questions or suggestions? Welcome to submit Issue