Export Materi Ke PDF
Membuat PDF dari halaman Eduverse yang sudah dirender oleh Fumadocs.
Eduverse menggunakan workflow export PDF resmi Fumadocs berbasis Puppeteer. Cara ini mencetak halaman yang sudah dirender sehingga isi MDX, code block, tabel, dan styling dapat dipertahankan dalam hasil PDF.
Untuk satu halaman, gunakan tombol Export PDF di action bar halaman lalu pilih Save as PDF pada dialog print browser. Workflow Puppeteer di halaman ini digunakan ketika export perlu diulang, dijalankan untuk beberapa route sekaligus, atau membutuhkan header dan footer PDF yang terkontrol.
Prasyarat
Jalankan server aplikasi terlebih dahulu:
pnpm devJika Puppeteer belum memiliki browser Chromium lokal, install browser yang dibutuhkan:
pnpm exec puppeteer browsers install chromeExport Satu Atau Beberapa Halaman
Gunakan route bersih sebagai argumen:
pnpm run export:pdf -- /docs/fitur-belajarBeberapa route dapat diproses sekaligus:
pnpm run export:pdf -- /docs/fitur-belajar /knowledge/rekayasa-perangkat-lunak/pertemuan-1File PDF dibuat di folder pdfs/. Folder output ini bersifat generated artifact dan sebaiknya tidak dimasukkan ke source content.
Konfigurasi
Gunakan environment variable berikut bila server atau folder output berbeda:
| Variable | Default | Fungsi |
|---|---|---|
PDF_BASE_URL | http://localhost:3000 | URL dasar aplikasi yang akan dicetak. |
PDF_OUTPUT_DIR | pdfs | Folder tujuan file PDF. |
Contoh:
$env:PDF_BASE_URL = "https://eduverse.example.com"
$env:PDF_OUTPUT_DIR = "exports"
pnpm run export:pdf -- /docs/spesifikasi-teknisSaat dicetak melalui workflow Puppeteer, sidebar, navbar, table of contents, dan kontrol aksi halaman disembunyikan agar PDF fokus pada materi. Header PDF dikosongkan supaya tanggal, waktu, dan judul halaman tidak ikut tercetak. Footer hanya menampilkan nomor halaman tanpa URL. Gunakan halaman web asli untuk search, navigasi, Copy Markdown, dan integrasi AI.