import fs from 'fs' import path from 'path' import matter from 'gray-matter' const POSTS_DIR = path.join(process.cwd(), 'content', 'posts') const KNIEPUNKT_DIR = path.join(process.cwd(), 'content', 'kniepunkt') // 1. Rename Article #5 (Gaia-X) const gaiaXFile = path.join(POSTS_DIR, '2026-01-16-gaia-x-ist-keine-cloud-und-warum-das-gut-ist.md') if (fs.existsSync(gaiaXFile)) { const data = matter(fs.readFileSync(gaiaXFile, 'utf8')) data.data.title = 'Digitale Souveränität Teil 2: Gaia-X ist keine Cloud und warum das gut ist' fs.writeFileSync(gaiaXFile, matter.stringify(data.content, data.data)) console.log('Renamed Article 5 (Gaia-X)') } // 2. Move Article #8 (Kniepunkt 011) to kniepunkt directory const ethikFile = path.join(POSTS_DIR, '2025-11-09-011-ethik-weggeklickt.md') const ethikDest = path.join(KNIEPUNKT_DIR, '011-ethik-weggeklickt.md') if (fs.existsSync(ethikFile)) { fs.renameSync(ethikFile, ethikDest) console.log('Moved Kniepunkt 011 to content/kniepunkt/') } // 3. Delete Post #2 and #3 (KI-Quiz) const quiz1 = path.join(POSTS_DIR, '2026-03-06-ki-quiz-teil-1-einfache-fragen.md') const quiz2 = path.join(POSTS_DIR, '2026-03-13-ki-quiz-teil-2-jetzt-wird-s-schwerer.md') if (fs.existsSync(quiz1)) { fs.unlinkSync(quiz1); console.log('Deleted Quiz 1') } if (fs.existsSync(quiz2)) { fs.unlinkSync(quiz2); console.log('Deleted Quiz 2') } // 4. Delete Post 7-11 (Digitale Souveränität Intros) const p7 = path.join(POSTS_DIR, '2026-02-06-digitale-souveraenitaet-teil-5-das-finale-wer-hat-eigentlich-die-macht-ueber-dei.md') const p8 = path.join(POSTS_DIR, '2026-01-30-rechnen-im-dunkeln-warum-du-deine-daten-nicht-mehr-teilen-musst.md') const p9 = path.join(POSTS_DIR, '2026-01-23-ki-souveraenitaet-bist-du-pilot-oder-nur-passagier.md') const p10 = path.join(POSTS_DIR, '2026-01-16-digitale-souveraenitaet-teil-2-warum-wir-kein-europaeisches-aws-brauchen.md') const p11 = path.join(POSTS_DIR, '2026-01-09-die-frankfurt-falle-warum-server-in-deutschland-nicht-gleich-digitale-souverae.md') ;[p7, p8, p9, p10, p11].forEach(p => { if (fs.existsSync(p)) { fs.unlinkSync(p); console.log('Deleted intro post:', path.basename(p)) } }) // 5. Delete all Kniepunkt posts/dupes from content/posts/ const allPosts = fs.readdirSync(POSTS_DIR).filter(f => f.endsWith('.md')) allPosts.forEach(f => { const filepath = path.join(POSTS_DIR, f) const raw = fs.readFileSync(filepath, 'utf8') const data = matter(raw) const title = (data.data.title || '').toLowerCase() if (title.includes('kniepunkt') || f.toLowerCase().includes('kniepunkt')) { fs.unlinkSync(filepath) console.log('Deleted Kniepunkt dupe from posts:', f) } })