Cara Buat Dokumentasi Otomatis dengan AI: Hemat Berjam-jam
“Nanti didokumentasikan” — kalimat yang paling sering jadi kebohongan terbesar di dunia software development.
Bukan karena developer malas. Tapi karena dokumentasi itu membosankan, memakan waktu, dan terasa seperti pekerjaan yang tidak langsung produce value. Kalau pilih antara buat fitur baru atau menulis docs, hampir semua orang pilih fitur.
Masalahnya, enam bulan ke depan kamu (atau tim kamu) yang akan menderita membaca kode tanpa konteks. Dan waktu itu, “nanti” sudah jadi “tidak pernah”.
AI mengubah ini. Bukan dengan menghilangkan kebutuhan dokumentasi, tapi dengan menghilangkan friction-nya.
Tiga Jenis Dokumentasi yang Bisa Diotomasi
Sebelum masuk ke workflow, penting untuk tahu mana yang bisa diotomasi dan mana yang tidak.
Bisa diotomasi dengan baik:
- Docstring dan JSDoc untuk fungsi
- README untuk repository atau modul
- API documentation dari kode
- Changelog dari commit messages
- Inline code comments
Tetap butuh manusia:
- “Kenapa” keputusan desain diambil
- Konteks bisnis dan domain knowledge
- Tutorial step-by-step yang butuh perspektif pengguna
- Arsitektur decisions (ADR)
Ekspektasi yang realistis: AI bisa handle 60-70% pekerjaan dokumentasi. Sisanya tetap butuh kamu. Tapi 60-70% itu cukup untuk secara signifikan mengubah berapa waktu yang kamu habiskan.
Workflow 1: Docstring Otomatis untuk Fungsi
Ini yang paling mudah dan langsung menghasilkan value. Untuk setiap fungsi yang kamu tulis atau modifikasi, minta AI generate docstring-nya.
Di VS Code dengan Copilot / Windsurf / Cursor
Untuk Python, tulis komentar """ di bawah function signature dan biarkan AI complete:
def calculate_monthly_payment(
principal: float,
annual_rate: float,
months: int
) -> float:
"""
# AI akan complete dari sini
Untuk JavaScript/TypeScript, tulis /** dan biarkan AI complete JSDoc:
/**
* AI akan generate JSDoc di sini
*/
function calculateMonthlyPayment(
principal: number,
annualRate: number,
months: number
): number {
Batch Processing via Prompt
Kalau punya banyak fungsi yang belum terdokumentasi, paste ke chat AI dan minta batch:
Tambahkan JSDoc yang comprehensive untuk setiap fungsi di bawah ini.
Sertakan: @param, @returns, @throws (jika relevan), dan contoh usage.
[paste kode di sini]
Workflow 2: README Generator
README yang bagus itu seperti elevator pitch untuk project kamu. Tapi menulis dari nol itu melelahkan.
Template Prompt untuk README
Buatkan README.md yang komprehensif untuk project berikut.
Stack: [list stack]
Deskripsi singkat project: [apa yang dilakukan project ini]
Target pengguna: [siapa yang akan pakai]
Struktur project:
[output dari tree -I node_modules -I .git]
Package.json / requirements.txt:
[paste konten file]
README harus mencakup:
- Deskripsi dan screenshot (placeholder)
- Prerequisites
- Cara install dan setup
- Environment variables yang diperlukan
- Cara run (development dan production)
- Struktur folder penting
- Contributing guide singkat
Hasilnya mungkin butuh adjustment, tapi struktur dasarnya sudah ada dan kamu tinggal polish.
Workflow 3: API Documentation dari Kode
Untuk REST API, ada tools yang bisa auto-generate dokumentasi dari kode atau dari OpenAPI spec. Tapi bahkan tanpa tools khusus, AI bisa sangat membantu.
Dari Route Handler ke Dokumentasi
Ini adalah route handlers Express.js untuk module users.
Generate dokumentasi API dalam format yang readable (bisa markdown atau tabel).
Sertakan: endpoint, method, request body/params, response format, dan error codes.
[paste route handlers]
Kombinasi dengan Swagger/OpenAPI
Kalau kamu pakai framework yang support OpenAPI (FastAPI di Python, NestJS di Node.js), AI bisa membantu:
- Generate OpenAPI annotations untuk endpoint yang belum punya
- Review dan improve schema yang sudah ada
- Generate contoh request/response yang realistic
Workflow 4: Changelog dari Git History
Tidak ada yang suka menulis changelog. Tapi changelog yang bagus sangat valuable untuk user dan untuk tracking apa yang berubah.
Otomasi dengan Git Log
git log --oneline --since="2 weeks ago" > commits.txt
Lalu prompt ke AI:
Ini adalah commit history dari 2 minggu terakhir.
Buatkan CHANGELOG.md entry yang proper untuk release v1.x.x.
Kategorikan perubahan dalam: Features, Bug Fixes, Breaking Changes, Improvements.
Tulis dalam bahasa yang user-friendly, bukan technical jargon dari commit message.
[paste commit history]
Workflow 5: Architecture Decision Records (ADR)
ADR adalah dokumentasi tentang “kenapa” — kenapa kita pilih teknologi X, kenapa kita desain sistem seperti ini. Ini yang sulit diotomasi, tapi AI bisa membantu menstrukturkan pemikiranmu.
Template ADR dengan AI
Saya baru saja membuat keputusan teknis berikut:
- Keputusan: [apa yang diputuskan]
- Konteks: [situasi dan constraints yang dihadapi]
- Alternatif yang dipertimbangkan: [opsi lain]
- Alasan memilih solusi ini: [reasoning]
Buatkan ADR (Architecture Decision Record) yang proper menggunakan template MADR atau format Michael Nygard.
AI akan menstrukturkan pemikiranmu ke format ADR yang terstandarisasi.
Tools yang Bisa Dikombinasikan
Untuk JavaScript/TypeScript Projects
- TypeDoc — generate API docs dari TypeScript source
- Compodoc — khusus untuk Angular
- Kombinasikan dengan AI untuk improve narasi yang dihasilkan
Untuk Python Projects
- Sphinx + autodoc — standard untuk Python documentation
- pdoc — lebih simple dari Sphinx
- AI untuk generate docstring sebelum tools ini dijalankan
Untuk API
- Swagger UI / Redoc — render OpenAPI spec jadi dokumentasi interaktif
- AI untuk generate atau improve OpenAPI spec
Setup CI/CD untuk Dokumentasi Otomatis
Kalau mau lebih serius, setup pipeline yang otomatis generate docs ketika ada perubahan kode:
# .github/workflows/docs.yml
name: Generate Documentation
on:
push:
branches: [main]
jobs:
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: npm install
- name: Generate TypeDoc
run: npx typedoc --out docs src/
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs
Hasilnya: setiap push ke main otomatis update dokumentasi yang dipublish.
Praktik Terbaik: Dokumentasi Tetap Human-Reviewed
Meskipun AI bisa generate dokumentasi dengan cepat, ada prinsip yang perlu dijaga:
- Selalu review sebelum commit — AI bisa salah mendeskripsikan behavior fungsi
- Tambahkan “why” secara manual — AI tidak tahu alasan bisnis di balik keputusan
- Jaga akurasi lebih dari completeness — dokumentasi yang salah lebih berbahaya dari tidak ada dokumentasi
- Update secara reguler — dokumentasi outdated adalah technical debt
Penutup
Dokumentasi yang bagus itu bukan kemewahan — itu investasi yang membayar dirinya sendiri ketika tim berkembang, ketika kamu onboarding orang baru, atau ketika kamu sendiri kembali ke kode yang kamu tulis setahun lalu.
Dengan AI, excusenya sudah tidak ada lagi. Setup workflow yang saya bagikan di atas bisa diimplementasikan dalam beberapa jam, dan efeknya akan terasa di setiap project ke depannya.
Mau bantuan setup documentation workflow untuk project atau tim kamu? Atau perlu diskusi soal tools yang paling pas untuk stack yang sedang kamu pakai? Hubungi mafadev — kita atur bareng.

Leave a Reply