Panduan Menggunakan Obsidian Dataview untuk Membuat Dashboard Produktivitas Personal

Panduan Menggunakan Obsidian Dataview untuk Membuat Dashboard Produktivitas Personal

Obsidian sudah jadi pilihan favorit banyak developer dan knowledge worker untuk mencatat dan mengelola informasi. Tapi tahukah kamu kalau dengan plugin Dataview, Obsidian bisa berubah jadi dashboard produktivitas yang powerful? Artikel ini akan memandu kamu membuat sistem pelacakan tugas, habit tracker, dan overview proyek—semua dalam satu tempat, tanpa perlu aplikasi tambahan yang bikin RAM jebol.

Kenapa Dataview Layak Dipelajari

Dataview adalah plugin yang mengubah vault Obsidian kamu jadi database yang bisa di-query. Bayangkan kamu punya puluhan note tentang proyek, meeting, atau ide—Dataview bisa mengumpulkan, menyaring, dan menampilkan data itu secara otomatis. Buat pengguna Termux yang sering kerja di environment terbatas, ini solusi ringan karena semua berjalan lokal tanpa perlu koneksi internet atau resource berat.

Yang bikin Dataview menarik: kamu bisa pakai syntax mirip SQL untuk query note kamu. Kalau kamu familiar dengan SELECT, WHERE, dan ORDER BY, kurva belajarnya jadi lebih landai.

Persiapan Awal

Pertama, pastikan Obsidian sudah terinstal. Kalau kamu pakai Termux, kamu bisa akses vault Obsidian lewat folder storage/shared yang di-sync dengan aplikasi Obsidian di Android. Install plugin Dataview dari Community Plugins (Settings → Community plugins → Browse → cari "Dataview" → Install → Enable).

Setelah aktif, buka Settings → Dataview dan pastikan "Enable JavaScript Queries" dicentang kalau kamu mau pakai fitur advanced nanti. Untuk pemula, cukup aktifkan "Enable Inline Queries" dulu.

Langkah Praktis Membuat Dashboard

  1. Buat struktur metadata di note kamu. Dataview bekerja dengan membaca frontmatter (metadata YAML di awal note) atau inline field. Contoh frontmatter untuk note tugas:
    ---
    status: in-progress
    priority: high
    due: 2024-01-15
    project: blog-redesign
    ---
    Atau pakai inline field yang lebih fleksibel: status:: done atau priority:: medium langsung di body note.
  2. Buat note dashboard utama. Misalnya buat file bernama "Dashboard.md". Di sini kamu akan menulis query Dataview. Contoh query sederhana untuk menampilkan semua tugas yang belum selesai:
    ```dataview
    TABLE status, priority, due
    FROM "projects"
    WHERE status != "done"
    SORT due ASC
    ```
    Query ini akan menampilkan tabel berisi semua note di folder "projects" yang statusnya bukan "done", diurutkan berdasarkan deadline.
  3. Buat tracker habit harian. Misalnya kamu mau track coding streak atau olahraga. Buat note harian dengan format:
    ---
    date: 2024-01-10
    coding: true
    exercise: false
    ---
    Lalu di dashboard, buat query untuk hitung berapa hari berturut-turut kamu coding:
    ```dataview
    TABLE date, coding, exercise
    FROM "daily"
    WHERE date >= date(today) - dur(7 days)
    SORT date DESC
    ```
    Ini menampilkan 7 hari terakhir dengan status habit kamu.
  4. Buat overview proyek dengan progress bar. Kalau kamu punya banyak task dalam satu proyek, kamu bisa hitung persentase completion. Tambahkan field total-tasks:: 10 dan completed-tasks:: 7 di note proyek, lalu query:
    ```dataview
    TABLE 
      total-tasks as "Total",
      completed-tasks as "Done",
      round((completed-tasks / total-tasks) * 100) + "%" as "Progress"
    FROM "projects"
    WHERE total-tasks
    ```
    Ini kasih kamu gambaran cepat mana proyek yang stuck dan mana yang hampir selesai.
  5. Gunakan DataviewJS untuk visualisasi custom. Kalau kamu nyaman dengan JavaScript, kamu bisa bikin chart atau kalender view. Contoh sederhana menampilkan jumlah note per tag:
    ```dataviewjs
    let pages = dv.pages("#work");
    dv.paragraph("Total work notes: " + pages.length);
    ```
    Ini lebih fleksibel tapi butuh pemahaman JavaScript dasar.

Kesalahan yang Sering Terjadi

  • Lupa konsistensi penamaan field. Kalau di satu note kamu pakai status:: done dan di note lain Status:: Done, Dataview akan treat itu sebagai field berbeda. Biasakan lowercase dan pakai dash atau underscore untuk multi-word field.
  • Query terlalu kompleks di awal. Banyak yang langsung bikin query rumit dengan banyak WHERE clause dan JOIN logic. Mulai dari query sederhana dulu, test, baru tambahkan filter satu per satu. Debugging query Dataview susah kalau kamu numpuk semua logic sekaligus.
  • Tidak pakai folder structure yang jelas. Dataview query jadi lebih efisien kalau kamu punya folder terpisah untuk "projects", "daily", "meetings", dll. Query FROM "projects" lebih cepat daripada FROM "" yang scan semua note.
  • Mengabaikan performance. Kalau vault kamu punya ribuan note dan kamu bikin query yang scan semuanya tanpa filter, Obsidian bisa jadi lambat. Selalu tambahkan WHERE clause untuk batasi scope query.
  • Tidak backup vault. Karena semua data lokal, kehilangan folder vault = kehilangan semua dashboard dan note. Sync ke Git atau cloud storage secara rutin. Kalau pakai Termux, kamu bisa setup cron job sederhana untuk rsync atau git push otomatis.

Tips Aman dan Etis

Dataview berjalan lokal dan tidak mengirim data ke server manapun, jadi aman untuk data sensitif. Tapi kalau kamu pakai DataviewJS, hati-hati dengan code yang kamu copy dari internet—pastikan kamu paham apa yang dilakukan script tersebut. Jangan jalankan code yang akses file system di luar vault atau bikin network request tanpa kamu verifikasi dulu.

Untuk pengguna Termux: jangan simpan credential atau API key di note yang di-query Dataview, apalagi kalau vault kamu di-sync ke cloud. Pakai environment variable atau file terpisah di luar vault untuk data sensitif.

Kalau kamu share template dashboard ke komunitas, pastikan tidak ada hardcoded path atau data personal. Buat template yang generic dan bisa di-customize user lain tanpa expose workflow atau struktur proyek kamu.

Workflow Nyata dari Lapangan

Dari pengalaman pakai Dataview selama setahun lebih, dashboard yang paling berguna itu yang simpel dan fokus. Saya punya tiga dashboard utama: satu untuk task management (filter by priority dan deadline), satu untuk learning tracker (track course, artikel, atau video yang sudah dan belum ditonton), dan satu untuk weekly review (aggregate semua aktivitas seminggu terakhir).

Yang sering terlupakan: dashboard perlu maintenance. Setiap bulan saya review query yang jarang dipakai dan hapus atau simplify. Dashboard yang terlalu banyak widget malah bikin overwhelmed dan akhirnya tidak dipakai.

Satu trick yang jarang dibahas: pakai template note dengan frontmatter pre-filled. Jadi setiap kali bikin note baru untuk task atau meeting, metadata sudah ada tinggal isi value-nya. Ini hemat waktu dan jaga konsistensi data.

Kesimpulan

Dataview mengubah Obsidian dari note-taking app jadi sistem produktivitas yang bisa disesuaikan dengan workflow kamu. Mulai dari query sederhana untuk list task, sampai dashboard kompleks dengan visualisasi custom—semua bisa dilakukan tanpa keluar dari Obsidian. Kuncinya: mulai kecil, konsisten dengan metadata, dan iterasi dashboard sesuai kebutuhan nyata kamu. Selamat mencoba, dan jangan lupa backup vault kamu secara rutin.

Next Post Previous Post
No Comment
Add Comment
comment url