Aplikasi Web Super Sederhana dengan Ruby dan Sinatra

Ruby adalah bahasa pemrograman dengan struktur sintaksis yang sangat sederhana. Oleh karena kesederhanaan dan beberapa keunggulan lainnya, Ruby sekarang cukup diminati oleh para developer website yang dulunya menggunakan bahasa pemrograman lain.

Komunitas yang sangat luas, dukungan teknologi dan dependency pihak ketiga yang juga lengkap adalah faktor penting mengapa Ruby menjadi cukup populer.

Ruby dapat dimanfaatkan untuk membuat aplikasi web, aplikasi desktop bahkan dapat pula dipakai untuk membangun aplikasi mobile (menggunakan RubyMotion ataupun MobiRuby). Sedangkan dalam hal pembuatan website, pembaca pasti sering mendengar sebuah framework bernama Rails atau Ruby on Rails atau disingkat RoR.

Bermain Ruby, Gem dan Sinatra

Singkat cerita, saya akan mencoba membuat tutorial sederhana penggunaan Ruby untuk membuat website yang sangat amat sederhana menggunakan sebuah dependency Ruby bernama Sinatra. Dengan harapan, pembaca yang belum begitu memahami tentang Ruby dapat mengikuti tutorial ini. Harapan lain adalah pembaca dapat menyukai Ruby. 😀

Sebelum memulai perjalanan tutorial ini. Pastikan bahwa komputer pembaca telah terpasang dengan Ruby. Pembaca dapat mengikuti tutorial sebelumnya disini, bila kebetulan menggunakan OS Linux / Ubuntu. Seketika Ruby telah terpasang pada sistem operasi, maka package manager Ruby bernama RubyGems akan ikut terpasang.

Buka Terminal dan ketik gem untuk memastikan bahwa RubyGems sudah dapat kita manfaatkan.

$ gem
command 'gem'

command ‘gem’

Mari kita memulai dengan instalasi Sinatra. Plugin atau dependency Sinatra akan saya install secara global pada environment Rbenv sehingga dapat dipakai pada direktori mana saja. Cara instalasi Sinatra cukuplah sederhana. Pastikan command gem pada terminal dapat berjalan. Jika sudah pembaca cukup mengetikkan perintah berikut:

$ gem install sinatra

Tunggulah beberapa saat karna command diatas akan melakukan pengunduhan sekaligus pemasangan sinatra pada sistem Ruby melalui RubyGems. Pastikan koneksi internet tetap lancar.

Jika instalasi Sinatra sukses. Pindahlah ke folder project yang akan dijadikan sebagai folder utama mini website menggunakan Sinatra ini. Sebagai contoh saya menempatkannya pada folder /home/<myusername>/Public/Ruby/sinatra. Berikut adalah command-nya:

$ mkdir -p Public/Ruby/sinatra

$ cd Public/Ruby/sinatra

Setelah berada pada folder project, buatlah file baru bernama index.rb, dan buka file tersebut menggunakan editor kesayangan pembaca. Kemudian tulis script berikut:

Cukup singkat bukan?

  • Baris pertama script adalah fungsi untuk melakukan pemanggilan modul Sinatra. (require ‘sinatra’)
  • Baris kedua kita membuat fungsi dengan menggunakan method ‘Get’ beserta deskripsi endpoint ‘/hello’. (get ‘hello’ do)
  • Baris ketiga adalah return yang akan ditampilkan pada browser. (this is hello from ruby and sinatra)

Baik, sekarang simpan file index.rb dan buka kembali Terminal. Pastikan berada pada folder project dan ketikkan command berikut:

$ ruby index.rb

Command diatas akan menampilkan informasi URL beserta Port pengaksesan, sekaligus mengaktifkan temporary web server.

command 'ruby index.rb'

command ‘ruby index.rb’

Mari kita buka browser dan ketikkan alamat http://localhost:4567. Maka akan tampil halaman berikut:

sinatra ditty known

sinatra ditty known

Apa yang terjadi? Tampaknya Sinatra tidak berjalan sebagaimana mestinya, Guys! Bukan, bukan seperti itu. Halaman diatas adalah halaman error Sinatra karena link URL yang kita akses tidak sesuai dengan link yang kita pointing pada file index.rb yaitu /hello.

Halaman diatas juga membuktikan bahwa temporary web server dari Sinatra telah berjalan sebagaimana mestinya.

Silahkan pembaca akses URL http://localhost:4567/hello, maka akan tampil halaman berikut:

Sinatra Hello

Sinatra Hello

Untuk mengakhiri dan mematikan server, kembali ke Terminal dan tekan CTRL+C.

Oke, kita telah berhasil membuat website sangat ‘super’ sederhana menggunakan Sinatra. Demikian tutorial singkat kali ini, namun jangan khawatir! Saya akan melanjutkan tutorial mengenai Ruby, Sinatra maupun framework Ruby lain seperti Rails pada kesempatan yang lain.

Terima kasih, selamat bereksperimen dan sampai jumpa di tutorial-tutorial selanjutnya. Salam sejahtera untuk kita semua.

 
Muhammad K Huda

Muhammad K Huda

A non exhausted blogger person within fullstack engineer (spicy food), open source religion, self-taught driver and maybe you know or don't like it. Simply says, Hello from Me!

 

Leave a Reply

Your email address will not be published. Required fields are marked *

Chaptcha * Time limit is exhausted. Please reload CAPTCHA.