import { ContentGenerator } from "../src/index"; import dotenv from "dotenv"; import path from "path"; import fs from "fs"; import { fileURLToPath } from "url"; // Fix __dirname for ESM const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); // Load .env from mintel.me (since that's where the key is) dotenv.config({ path: path.resolve(__dirname, "../../../../mintel.me/apps/web/.env"), }); async function main() { const apiKey = process.env.OPENROUTER_API_KEY || process.env.OPENROUTER_KEY; if (!apiKey) { console.error("āŒ OPENROUTER_API_KEY not found"); process.exit(1); } const generator = new ContentGenerator(apiKey); const draftContent = `# The Case for Static Sites Static sites are faster and more secure. They don't have a database to hack. They are also cheaper to host. You can use a CDN to serve them globally. Dynamic sites are complex and prone to errors.`; console.log("šŸ“„ Original Content:"); console.log(draftContent); console.log("\nšŸš€ Optimizing content...\n"); try { const post = await generator.optimizePost(draftContent, { enhanceFacts: true, addDiagrams: true, addMemes: true, }); console.log("\n\nāœ… OPTIMIZATION COMPLETE"); console.log("--------------------------------------------------"); console.log(`Research Points Added: ${post.research.length}`); console.log(`Memes Generated: ${post.memes.length}`); console.log(`Diagrams Generated: ${post.diagrams.length}`); console.log("--------------------------------------------------"); // Save to file const outputPath = path.join(__dirname, "optimized.md"); fs.writeFileSync(outputPath, post.content); console.log(`šŸ“„ Saved output to: ${outputPath}`); } catch (error) { console.error("āŒ Optimization failed:", error); } } main();