Sudah 2019. Artikel terakhir di blog ini ditulis pada 29 Desember 2017. Artinya, sepanjang 2018 tidak ada satupun artikel yang saya publish. :(
Ketika saya “berniat” menulis kembali beberapa hari yang lalu, saya baru menyadari bahwa laptop yang saya pakai saat ini ternyata belum terpasang “mesin” untuk menulis blog. Memang, sepanjang 2018, laptop sudah 2x berganti. Dulu saya menggunakan Wordpress, salah satu content management system (CMS) populer, untuk menulis blog. Belakangan, Wordpress berkembang tidak hanya sebagai “mesin” blog, tetapi juga dapat digunakan untuk membuat website portal, toko online, bahkan forum. Bagi saya - yang hanya memanfaatkannya untuk blog dan itu pun tidak rutin - Wordpress terlalu overkill alias berlebihan. Terlalu banyak fitur :D Karena itu, setelah menemukan artikel tentang Jekyll sekitar dua tahun lalu dan kemudian membandingkannya dengan Wordpress, saya mantap beralih untuk menjadikan Jekyll sebagai “mesin” di belakang blog saya.
Sekalian install Jekyll, saya tuliskan saja tahapannya. Lumayan, dapat satu artikel kan. Selain sebagai catatan saya, mudah-mudahan bisa bermanfaat ketika ada yang membutuhkan.
Apa itu Jekyll?
Baik, saya mulai dengan perkenalan dulu. Apa itu Jekyll?
Kita tahu bahwa ada dua jenis website: dynamic dan static. Pada dinamic website - misalnya yang dibuat menggunakan CMS seperti Wordpress, Joomla, Drupal dan Blogger/Blogspot - informasi atau konten untuk mengisi sebuah halaman web disimpan dalam database yang kemudian akan ditarik ketika ada “perintah” atau query. Sebagai contoh, ketika kita akan melakukan pencarian produk di Tokopedia, halaman HTML utuh yang berisi hasil pencarian sebenarnya tidak ada. Tetapi Tokopedia mempunyai template khusus untuk memuat hasil pencarian. Sistem akan melakukan query untuk mencari produk pada database sesuai kata kunci, selanjutnya daftar produk yang ditemukan akan dimuat dalam template tersebut.
Di sisi lain, static website tidak menggunakan database. Seluruh informasi yang akan ditampilkan pada suatu halaman web memang sudah ada pada file HTML-nya. Tidak ada lagi proses query. File-file HTML ini dapat ditulis satu-persatu menggunakan text editor seperti Notepad atau Sublime Text, atau dapat pula dihasilkan secara otomatis menggunakan “static site generator” seperti Jekyll.
Jekyll, sesuai tagline-nya “a simple, blog-aware, static site generator” adalah software untuk membuat blog statis. Untuk menghasilkan sebuah blog, Jekyll hanya membutuhkan template, file-file artikel yang ditulis dengan format Markdown dan sebuah file konfigurasi. Kemudian hasilnya kita upload ke server. Itulah blog kita. Sesederhana itu. Mungkin terdengar seperti alternatif yang hanya cocok untuk para “geek”, tapi sebenernya Jekyll (dan juga static blog lainnya) mempunyai banyak kelebihan dibandingkan Wordpress dkk, di ataranya:
- Seperti yang sudah saya sampaikan, Wordpress itu overkill. Terlalu berlebihan, setidaknya untuk kebutuhan saya dalam membuat blog. Sementara itu, Jekyll memang dikhususkan sebagai blogging platform. Meskipun jauh lebih simple, Jekyll tetap kaya akan fitur-fitur yang dibutuhkan untuk membuat blog.
- Jekyll jauh lebih cepat. Itu karena semua halaman yang ditampilkan memang sudah benar-benar “jadi”. Tidak ada lagi query ke database. Selain itu, memuat file statis pada halaman website membutuhkan sumberdaya yang jauh lebih kecil di sisi server.
- Karena server hanya berisi file-file statis, Jekyll lebih aman dari “gangguan” hacker yang tidak bertanggungjawab. Tidak ada sesuatu yang bisa disasar oleh hacker, kecuali mereka punya username dan password-nya :D Bandingkan dengan website berbasis Wordpress yang mempunyai banyak “lubang” untuk dieksploitasi.
- Jekyll adalah “mesin” di belakang Github. Karenanya, dengan mudah kita bisa publish blog pada Github. Gratis. Dengan Github, setiap perubahan pada blog kita akan terekam, meskipun hanya merubah satu huruf. Ya, Github adalah salah satu layanan versioning control yang paling populer. Selain itu, dengan Github memudahkan kita untuk kolaborasi.
- Jekyll menggunakan Markdown. Artinya saya bisa membuat artikel yang berisi R scripts dengan R Markdown.
Tidak ada yang sempurna. Jekyll pun punya kelemahan dibandingkan Wordpress, di antaranya:
- Tidak bisa update blog secara live. Perubahan dilakukan secara “lokal”, baru kemudian blog kita generate ulang.
- Menulis artikel pada Jekyll artinya menulis sebuah file teks. Formating dilakukan dengan menggunakan “simbol-simbol” khusus. Bagi yang tidak terbiasa tentu akan terasa merepotkan. Bandingkan dengan Wordpress, menulis artikel dan format-nya (teks tebal dan miring, ukuran huruf, menyisipkan gambar) semudah membuat tulisan dengan Microsoft Word: apa yang kita lihat itulah yang akan kita dapat (what you see is what you get - WYSIWYG).
- Tidak seperti template Wordpress yang dapat diganti dengan “sekali” klik, mengubah template Jekyll relatif memerlukan “upaya ekstra”, tricky alias rumit :(
Instalasi Jekyll pada Windows 10
Jekyll pada Windows memang tidak didukung secara resmi. Official-support hanya untuk Linux dan MacOS. Meskipun begitu, bukan berarti kita tidak bisa menginstal dan menjalankan Jekyll pada Windows. Saya berhasil menginstall Jekyll dengan memanfaatkan sumber utama dari sini dan sini plus beberapa upaya ekstra yang sumbernya lupa tidak saya catat. Ya, instalasi pada Windows memang tidak sesederhana pada Linux atau MacOS - yang hanya cukup dengan beberapa baris perintah (dan sambungan internet tentunya). Kabar baiknya, jika menggunakan Windows 10 (versi 1607 atau lebih baru), kita mempunyai opsi lain untuk menginjalankan Jekyll pada Windows dengan memanfaatkan Windows Subsystem for Linux (WSL). Sederhananya, WSL adalah Linux yang diinstal pada Windows. Inilah yang saya jabarkan sekarang: Menginstal dan menjalankan Jekyll pada Windows 10 dengan WSL. Ada dua tahapan:
Pertama, Instal Windows Subsystem for Linux pada Windows 10
Tahapannya:
Dari start menu, klik Settings
Klik Update & Security
Klik For Developer
Pada bagian “Use developer features”, pilih Developer Mode
Windows akan menampikan konfirmasi untuk mengaktifkan developer mode. Klik Yes
Windows akan menginstal komponen-komponen yang diperlukan. Setelah selesai lakukan restart/reboot PC
Masuk ke Control Panel
Klik Programs
Klik Turn Windows features on or off
Cek Windows Subsystem for Linux (beta), lalu klik OK
Update: Seluruh tahapan 1-10 di atas dapat dilakukan dengan menjalankan perintah berikut pada Windows PowerShell (jalankan sebagai Administrator):
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Windows akan menginstal komponen-komponen yang diperlukan. Setelah selesai lakukan restart kembali.
Dari start menu, buka Command Prompt (dapat dilakukan dengan memasukan kata kunci “cmd”)
Pada Command Prompt, masukan perintah berikut lalu tekan tombol enter
lxrun /install
Ketikan y untuk melanjutkan. Tekan enter
Windows akan mulai mengunduh komponen-komponen yang diperlukan dan kemudian melakukan instalasi Linux.
Masukkan username lalu tekan enter
Masukan password lalu tekan enter
Masukan kembali password lalu tekan enter
Instalasi Windows Subsystem for Linux selesai. Restart kembali PC
Kedua, Instal Jekyll pada Windows Subsystem for Linux
Tahapannya:
Dari start menu, buka aplikasi Bash on Ubuntu on Windows
Atau, bisa juga buka Command Prompt, lalu ketikan perintah berikut lalu enter
bash
Update Ubuntu dengan perintah berikut lalu enter
sudo apt-get update -y && sudo apt-get upgrade -y
Masukkan password yang dibuat pada tahapan pertama poin 17. Tunggu hingga proses selesai.
Jekyll berjalan pada Ruby. Instal Ruby dengan perintah berikut
sudo apt-get install -y build-essential ruby-full
Update Ruby gem
sudo gem update –system
Instal Jekyll
sudo gem install jekyll bundler
Membuat blog pertama dengan Jekyll
Setelah Jekyll sukses diinstal, saatnya kita membuat blog. Caranya sangat mudah. Masih menggunakan Bash on Ubuntu on Windows :
Masuk ke direktori di mana file-file statis Jekyll akan dibuat. Misalnya saya akan menyimpannya pada folder D:\Personal\Blog, maka masukkan perintah
cd /mnt/d/Personal/Blog
Buat blog Jekyll baru, misalnya myblog
jekyll new myblog
Jekyll akan menginisiasi blog baru. Tunggu sampai proses selesai.
Silakan periksa folder D:\Personal\Blog, akan ada folder baru dengan nama myblog. Folder inilah yang berisi file-file statis yang diperluka oleh Jekyll untuk membentuk blog.
Perintah
jekyll new myblog
menginisiasi blog baru dengan template default yaitu minima. Jika ingin menggunakan template lain, bisa download/clone dari Github atau download dari sumber lain seperti ini dan ini. Ganti semua file dan folder di dalam folder myblog dengan template yang diinginkan.Masuk ke folder myblog
cd /myblog
Generate blog dan jalankan di server lokal
bundle exec jekyll serve
Buka browser. Blog dapat diakses melalui alamat http://127.0.0.1:4000
Selamat, blog statis pertama telah selesai dibuat dengan menggunakan Jekyll. Selanjutnya, kita perlu menyunting file konfigurasi _config.yml untuk mengubah judul, link, maupun catatan kaki (footer). Buka file _config.yml dengan text editor seperti Notepad.
Perubahan file konfigurasi tidak langsung dieksekusi oleh. Silakan kembali ke Bash on Ubuntu on Windows, lalu stop Jekyll service dengan cara menekan tombol (keyboard) Ctrl+C, lalu jalankan kembali dengan perintah
bundle exec jekyll serve
Silakan refresh browser. Halaman muka blog akan berubah menjadi seperti ini
Selain mengubah title, url dan description, banyak pengaturan yang bisa dilakukan melalui file _config.xml, misalnya menampilkan menu, mengaktifkan komentar dengan Disqus dan lain-lain. Selengkapnya bisa dipelajari di laman dokumentasi template yang digunakan.
Mudah bukan? Jika ada yang ingin didiskusikan, bisa tinggalkan pesan pada kolom komentar di bawah atau bisa hubungi saya melalui email [email protected]
. Semoga bermanfaat :)