Professional News Generator PWA for Indonesian Journalists. Powered by Google Gemini 3 Pro (Preview) with resilient multi-model fallback.
- Multi-Model Intelligence: Automatically switches between Gemini 3 Pro, Gemini 3 Flash, and Gemini 2.5 Flash to handle rate limits (429 errors) and quotas.
- 2-Step Generation Strategy: Generates article body first for context, then follows up with precision titles and hashtags.
- Context-Aware Extraction: Automatically identifies Location, Date, and Persons Involved from transcripts and uploaded files.
- Auto-Save & Restore: 'Smart Drafts' automatically save your progress. Restore full state instantly—including input files, context, and settings.
- Interactive Editing: Double-click any generated title or paragraph to edit inline.
- Workspace Management: Easily clear your workspace or manage saved drafts from the sidebar.
- Interactive Tour: Built-in onboarding guide using
driver.jsfor new users. - PWA Support: Installable on mobile/desktop with offline service worker caching.
- BYOK (Bring Your Own Key): API Key stored securely in your browser's local storage.
- Multi-format Input: Drag-and-drop support for PDF, DOCX, and TXT files.
- Rate Limiter: Built-in queue system to manage free tier API usage (10 RPM).
- Framework: Next.js 15+ (App Router, Static Export)
- AI: Google GenAI SDK (Gemini 3 Pro / Flash)
- State & Storage: React Context + IndexedDB (
idb) - Styling: Tailwind CSS 4
- UI Components: Lucide React, Sonner (Toast)
- UX/Onboarding: Driver.js
- File Processing: pdfjs-dist, mammoth
-
Node.js 18+
-
Gemini API Key (Get one here)
# Clone the repository
git clone https://github.com/arinadi/NewsGeneratorV2.git
cd NewsGeneratorV2
# Install dependencies
npm install
# Start development server
npm run devOpen http://localhost:3000 in your browser.
- Click the ⚙️ Settings icon.
- Enter your Gemini API Key.
- Model Selection: The app defaults to Gemini 3 Pro. You can manually select a model or let the auto-fallback system handle it.
- Click "Test Connection" to verify.
npm run buildOutput is in the out/ folder. Ready for Vercel, Netlify, or any static host.
├── app/ # Next.js App Router & Layouts
├── components/
│ ├── EditorPanel.tsx # Input form & file handling
│ ├── PreviewPanel.tsx # Article display & inline editing
│ ├── HistorySidebar.tsx # Saved Drafts management
│ ├── TourGuide.tsx # Onboarding tour logic
│ └── ...
├── services/
│ ├── GeminiService.ts # AI integration & Fallback logic
│ ├── DraftService.ts # IndexedDB Draft management
│ └── RateLimiter.ts # Request queueing
├── public/ # Manifest, Icons, SW
└── vibes-coding/ # Implementation plans & docs
MIT License - See LICENSE for details.
- Google Gemini - AI Model
- Next.js - React Framework
- Vercel - Deployment