Before starting, ensure you have:
cd C:\dev\itblogpros\_automation\article-studio
npm install
This installs:
Installation takes: 1-2 minutes
Option A: Use existing .env
If you already have a .env file in the project root (C:\dev\itblogpros\.env), you're all set! Article Studio will use it automatically.
Option B: Create new .env
Create .env in the article-studio directory:
# Required
GEMINI_API_KEY=your_gemini_api_key_here
# Optional (for Bing submission)
BING_WEBMASTER_API_KEY=your_bing_key_here
Where to get API keys:
Gemini API Key:
.envBing Webmaster API Key:
.envWindows:
START.bat
Just double-click START.bat and your browser opens automatically!
Mac/Linux:
npm start
For development with auto-restart:
npm run dev
database/articles.db)You'll see:
╔════════════════════════════════════════════════════════════════╗
║ ║
║ ITBlogPros Article Studio ║
║ Running on http://localhost:3000 ║
║ ║
║ Ready to generate, preview, and publish articles! ║
║ ║
╚════════════════════════════════════════════════════════════════╝
In the web interface:
The UI shows real-time progress:
Generating... 10%
Researching Bing queries...
Generating... 30%
Generating article with Gemini...
Generating... 60%
Validating Amazon ASINs...
Generating... 80%
Calculating quality score...
Generating... 100%
Article generated successfully!
Expected time: 2-3 minutes
After generation completes, you'll see:
Quality Score Guide:
Navigate to:
The article is now:
Check deployment:
# 1. Start Article Studio
cd C:\dev\itblogpros\_automation\article-studio
npm start
# 2. Browser opens automatically to localhost:3000
Tip: You can generate multiple articles in a row:
Batch generation:
C:\dev\itblogpros\posts\
└── 2025-01-16-your-article-slug.md
C:\dev\itblogpros\_automation\article-studio\database\
└── articles.db
C:\dev\itblogpros\_automation\article-studio\logs\
└── server.log (if configured)
Edit server.js line 10:
const PORT = 3000; // Change to 3001, 8000, etc.
Eleventy preview uses port 8080 by default. To change:
Edit server.js around line 120:
global.previewProcess = spawn('npx', ['@11ty/eleventy', '--serve', '--quiet', '--port=8081'], {
Edit services/database.js around line 8:
const dbPath = path.join(__dirname, '../database/articles.db');
// Change to custom location
Solution 1: Kill existing process
# Find process
netstat -ano | findstr :3000
# Kill process (replace <PID> with actual number)
taskkill /PID <PID> /F
Solution 2: Use different port (see Configuration above)
Solution: Install dependencies
cd C:\dev\itblogpros\_automation\article-studio
npm install
Solution: Create .env file (see Installation Step 3)
Check Eleventy:
cd C:\dev\itblogpros
npx @11ty/eleventy --version
If not installed:
cd C:\dev\itblogpros
npm install
Reset database:
cd C:\dev\itblogpros\_automation\article-studio
del database\articles.db
del database\articles.db-journal
Restart server - database recreates automatically.
cd C:\dev\itblogpros
git pull origin main
cd C:\dev\itblogpros\_automation\article-studio
npm update
# Delete node_modules and reinstall
rmdir /s /q node_modules
npm install
Coming soon! You'll be able to:
Coming soon! Features:
Coming soon! Track:
Server logs show in terminal. Look for:
"Cannot read property of undefined"
"Timeout error"
"Git push failed"
Once setup is complete:
You're ready to streamline your content creation! 🚀
Pro Tip: Keep Article Studio running all day. Just minimize the terminal and browser tab. Generate articles whenever inspiration strikes!
Happy writing! ✨